//lua  i2c2.lua arminsn_format_autogen.txt
#ifndef inst_name
#define inst_name(n, ...) \
    printf(n);            \
    return;
#endif
#ifndef CPU_REG_TMP
#define CPU_REG_TMP 0x100
#endif
#ifndef SET_REG_PARAM
#define SET_REG_PARAM(idx, value) reg[CPU_REG_TMP + (idx)] = (value);
#endif
#ifndef CPU_EXEC_ADC
#define CPU_EXEC_ADC                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                         \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("ADC", 1, 1);
#endif
#ifndef CPU_EXEC_ADC1
#define CPU_EXEC_ADC1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("ADC", 2, 3);
#endif
#ifndef CPU_EXEC_ADC2
#define CPU_EXEC_ADC2                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("ADC", 3, 5);
#endif
#ifndef CPU_EXEC_ADD
#define CPU_EXEC_ADD                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                         \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("ADD", 4, 9);
#endif
#ifndef CPU_EXEC_ADD1
#define CPU_EXEC_ADD1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("ADD", 5, 13);
#endif
#ifndef CPU_EXEC_ADD2
#define CPU_EXEC_ADD2                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("ADD", 6, 15);
#endif
#ifndef CPU_EXEC_ADD3
#define CPU_EXEC_ADD3                                                       \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                      \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 12)); \
    inst_name("ADD", 7, 17);
#endif
#ifndef CPU_EXEC_ADD4
#define CPU_EXEC_ADD4                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 5)) SET_REG_PARAM(5, bit(insn, 25, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("ADD", 8, 21);
#endif
#ifndef CPU_EXEC_ADR
#define CPU_EXEC_ADR                     \
    SET_REG_PARAM(0, 3);                 \
    SET_REG_PARAM(1, bit(insn, 0, 4))    \
    SET_REG_PARAM(2, bit(insn, 16, 4))   \
    SET_REG_PARAM(3, bit(insn, 20, 12)); \
    inst_name("ADR", 9, 23);
#endif
#ifndef CPU_EXEC_AND
#define CPU_EXEC_AND                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                         \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("AND", 10, 25);
#endif
#ifndef CPU_EXEC_AND1
#define CPU_EXEC_AND1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("AND", 11, 27);
#endif
#ifndef CPU_EXEC_AND2
#define CPU_EXEC_AND2                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("AND", 12, 29);
#endif
#ifndef CPU_EXEC_ASR
#define CPU_EXEC_ASR                                                                                                                             \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("ASR", 13, 31);
#endif
#ifndef CPU_EXEC_ASR1
#define CPU_EXEC_ASR1                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("ASR", 14, 33);
#endif
#ifndef CPU_EXEC_B
#define CPU_EXEC_B                      \
    SET_REG_PARAM(0, 2);                \
    SET_REG_PARAM(1, bit(insn, 0, 4))   \
    SET_REG_PARAM(2, bit(insn, 8, 24)); \
    inst_name("B", 15, 35);
#endif
#ifndef CPU_EXEC_BFC
#define CPU_EXEC_BFC                                                       \
    SET_REG_PARAM(0, 4);                                                   \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                      \
    SET_REG_PARAM(2, bit(insn, 11, 5))                                     \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 5)); \
    inst_name("BFC", 16, 37);
#endif
#ifndef CPU_EXEC_BFI
#define CPU_EXEC_BFI                                                                                          \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 11, 5))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 5)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("BFI", 17, 39);
#endif
#ifndef CPU_EXEC_BIC
#define CPU_EXEC_BIC                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                         \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("BIC", 18, 41);
#endif
#ifndef CPU_EXEC_BIC1
#define CPU_EXEC_BIC1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("BIC", 19, 43);
#endif
#ifndef CPU_EXEC_BIC2
#define CPU_EXEC_BIC2                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("BIC", 20, 45);
#endif
#ifndef CPU_EXEC_BKPT
#define CPU_EXEC_BKPT                   \
    SET_REG_PARAM(0, 3);                \
    SET_REG_PARAM(1, bit(insn, 0, 4))   \
    SET_REG_PARAM(2, bit(insn, 12, 12)) \
    SET_REG_PARAM(3, bit(insn, 28, 4)); \
    inst_name("BKPT", 21, 47);
#endif
#ifndef CPU_EXEC_BL
#define CPU_EXEC_BL                     \
    SET_REG_PARAM(0, 2);                \
    SET_REG_PARAM(1, bit(insn, 0, 4))   \
    SET_REG_PARAM(2, bit(insn, 8, 24)); \
    inst_name("BL", 22, 49);
#endif
#ifndef CPU_EXEC_BL1
#define CPU_EXEC_BL1                    \
    SET_REG_PARAM(0, 2);                \
    SET_REG_PARAM(1, bit(insn, 7, 1))   \
    SET_REG_PARAM(2, bit(insn, 8, 24)); \
    inst_name("BL", 23, 49);
#endif
#ifndef CPU_EXEC_BLX
#define CPU_EXEC_BLX                                                                                          \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("BLX", 24, 51);
#endif
#ifndef CPU_EXEC_BX
#define CPU_EXEC_BX                     \
    SET_REG_PARAM(0, 2);                \
    SET_REG_PARAM(1, bit(insn, 0, 4))   \
    SET_REG_PARAM(2, bit(insn, 28, 4)); \
    inst_name("BX", 25, 53);
#endif
#ifndef CPU_EXEC_BXJ
#define CPU_EXEC_BXJ                                                                                          \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("BXJ", 26, 55);
#endif
#ifndef CPU_EXEC_CLREX
#define CPU_EXEC_CLREX                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 12, 1))                                                                        \
    SET_REG_PARAM(2, bit(insn, 13, 3))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("CLREX", 27, 61);
#endif
#ifndef CPU_EXEC_CLZ
#define CPU_EXEC_CLZ                                                                                          \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("CLZ", 28, 63);
#endif
#ifndef CPU_EXEC_CMN
#define CPU_EXEC_CMN                                                        \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                      \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 12)); \
    inst_name("CMN", 29, 65);
#endif
#ifndef CPU_EXEC_CMN1
#define CPU_EXEC_CMN1                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 5)) SET_REG_PARAM(5, bit(insn, 25, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("CMN", 30, 67);
#endif
#ifndef CPU_EXEC_CMN2
#define CPU_EXEC_CMN2                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 25, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("CMN", 31, 69);
#endif
#ifndef CPU_EXEC_CMP
#define CPU_EXEC_CMP                                                        \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                      \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 12)); \
    inst_name("CMP", 32, 71);
#endif
#ifndef CPU_EXEC_CMP1
#define CPU_EXEC_CMP1                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 5)) SET_REG_PARAM(5, bit(insn, 25, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("CMP", 33, 73);
#endif
#ifndef CPU_EXEC_CMP2
#define CPU_EXEC_CMP2                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 25, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("CMP", 34, 75);
#endif
#ifndef CPU_EXEC_DBG
#define CPU_EXEC_DBG                                                       \
    SET_REG_PARAM(0, 4);                                                   \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                      \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                     \
    SET_REG_PARAM(3, bit(insn, 20, 4)) SET_REG_PARAM(4, bit(insn, 28, 4)); \
    inst_name("DBG", 35, 78);
#endif
#ifndef CPU_EXEC_DMB
#define CPU_EXEC_DMB                                                       \
    SET_REG_PARAM(0, 4);                                                   \
    SET_REG_PARAM(1, bit(insn, 12, 4))                                     \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                     \
    SET_REG_PARAM(3, bit(insn, 20, 4)) SET_REG_PARAM(4, bit(insn, 28, 4)); \
    inst_name("DMB", 36, 79);
#endif
#ifndef CPU_EXEC_DSB
#define CPU_EXEC_DSB                                                       \
    SET_REG_PARAM(0, 4);                                                   \
    SET_REG_PARAM(1, bit(insn, 12, 4))                                     \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                     \
    SET_REG_PARAM(3, bit(insn, 20, 4)) SET_REG_PARAM(4, bit(insn, 28, 4)); \
    inst_name("DSB", 37, 81);
#endif
#ifndef CPU_EXEC_EOR
#define CPU_EXEC_EOR                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                         \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("EOR", 38, 83);
#endif
#ifndef CPU_EXEC_EOR1
#define CPU_EXEC_EOR1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("EOR", 39, 85);
#endif
#ifndef CPU_EXEC_EOR2
#define CPU_EXEC_EOR2                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("EOR", 40, 87);
#endif
#ifndef CPU_EXEC_ISB
#define CPU_EXEC_ISB                                                       \
    SET_REG_PARAM(0, 4);                                                   \
    SET_REG_PARAM(1, bit(insn, 12, 4))                                     \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                     \
    SET_REG_PARAM(3, bit(insn, 20, 4)) SET_REG_PARAM(4, bit(insn, 28, 4)); \
    inst_name("ISB", 41, 90);
#endif
#ifndef CPU_EXEC_LDC
#define CPU_EXEC_LDC                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                                                   \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                                                   \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 9, 1)) SET_REG_PARAM(5, bit(insn, 10, 1)) SET_REG_PARAM(6, bit(insn, 12, 4)) SET_REG_PARAM(7, bit(insn, 16, 4)) SET_REG_PARAM(8, bit(insn, 20, 4)) SET_REG_PARAM(9, bit(insn, 24, 8)); \
    inst_name("LDC", 42, 93);
#endif
#ifndef CPU_EXEC_LDC1
#define CPU_EXEC_LDC1                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 9, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 24, 8)); \
    inst_name("LDC", 43, 93);
#endif
#ifndef CPU_EXEC_LDC2
#define CPU_EXEC_LDC2                                                                                                                                                                                                \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                             \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 9, 1)) SET_REG_PARAM(5, bit(insn, 10, 1)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 24, 8)); \
    inst_name("LDC", 44, 95);
#endif
#ifndef CPU_EXEC_LDC3
#define CPU_EXEC_LDC3                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                           \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                              \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 9, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 20, 4)) SET_REG_PARAM(7, bit(insn, 24, 8)); \
    inst_name("LDC", 45, 95);
#endif
#ifndef CPU_EXEC_LDM
#define CPU_EXEC_LDM                                                        \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 10, 1))                                      \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 16)); \
    inst_name("LDM", 46, 99);
#endif
#ifndef CPU_EXEC_LDMDA
#define CPU_EXEC_LDMDA                                                      \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 10, 1))                                      \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 16)); \
    inst_name("LDMDA", 47, 101);
#endif
#ifndef CPU_EXEC_LDMDB
#define CPU_EXEC_LDMDB                                                      \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 10, 1))                                      \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 16)); \
    inst_name("LDMDB", 48, 103);
#endif
#ifndef CPU_EXEC_LDMIB
#define CPU_EXEC_LDMIB                                                      \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 10, 1))                                      \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 16)); \
    inst_name("LDMIB", 49, 105);
#endif
#ifndef CPU_EXEC_LDR
#define CPU_EXEC_LDR                                                                                                                                                                \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 12)); \
    inst_name("LDR", 50, 109);
#endif
#ifndef CPU_EXEC_LDR1
#define CPU_EXEC_LDR1                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                 \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                                                    \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                                                    \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 5)) SET_REG_PARAM(8, bit(insn, 25, 2)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("LDR", 51, 115);
#endif
#ifndef CPU_EXEC_LDRB
#define CPU_EXEC_LDRB                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 12)); \
    inst_name("LDRB", 52, 119);
#endif
#ifndef CPU_EXEC_LDRB1
#define CPU_EXEC_LDRB1                                                                                                                                                                                                                                   \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                 \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                                                    \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                                                    \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 5)) SET_REG_PARAM(8, bit(insn, 25, 2)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("LDRB", 53, 123);
#endif
#ifndef CPU_EXEC_LDRBT
#define CPU_EXEC_LDRBT                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                          \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("LDRBT", 54, 125);
#endif
#ifndef CPU_EXEC_LDRBT1
#define CPU_EXEC_LDRBT1                                                                                                                                                             \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("LDRBT", 55, 126);
#endif
#ifndef CPU_EXEC_LDRD
#define CPU_EXEC_LDRD                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("LDRD", 56, 127);
#endif
#ifndef CPU_EXEC_LDRD1
#define CPU_EXEC_LDRD1                                                                                                                                                                                                \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("LDRD", 57, 131);
#endif
#ifndef CPU_EXEC_LDREX
#define CPU_EXEC_LDREX                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("LDREX", 58, 133);
#endif
#ifndef CPU_EXEC_LDREXB
#define CPU_EXEC_LDREXB                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("LDREXB", 59, 135);
#endif
#ifndef CPU_EXEC_LDREXD
#define CPU_EXEC_LDREXD                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("LDREXD", 60, 137);
#endif
#ifndef CPU_EXEC_LDREXH
#define CPU_EXEC_LDREXH                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("LDREXH", 61, 139);
#endif
#ifndef CPU_EXEC_LDRH
#define CPU_EXEC_LDRH                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("LDRH", 62, 143);
#endif
#ifndef CPU_EXEC_LDRH1
#define CPU_EXEC_LDRH1                                                                                                                                                                                                \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("LDRH", 63, 147);
#endif
#ifndef CPU_EXEC_LDRHT
#define CPU_EXEC_LDRHT                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("LDRHT", 64, 149);
#endif
#ifndef CPU_EXEC_LDRHT1
#define CPU_EXEC_LDRHT1                                                                                                                          \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("LDRHT", 65, 149);
#endif
#ifndef CPU_EXEC_LDRSB
#define CPU_EXEC_LDRSB                                                                                                                                                                                                \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("LDRSB", 66, 151);
#endif
#ifndef CPU_EXEC_LDRSB1
#define CPU_EXEC_LDRSB1                                                                                                                                                                                               \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("LDRSB", 67, 155);
#endif
#ifndef CPU_EXEC_LDRSBT
#define CPU_EXEC_LDRSBT                                                                                                                          \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("LDRSBT", 68, 157);
#endif
#ifndef CPU_EXEC_LDRSBT1
#define CPU_EXEC_LDRSBT1                                                                                                                         \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("LDRSBT", 69, 157);
#endif
#ifndef CPU_EXEC_LDRSH
#define CPU_EXEC_LDRSH                                                                                                                                                                                                \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("LDRSH", 70, 159);
#endif
#ifndef CPU_EXEC_LDRSH1
#define CPU_EXEC_LDRSH1                                                                                                                                                                                               \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("LDRSH", 71, 163);
#endif
#ifndef CPU_EXEC_LDRSHT
#define CPU_EXEC_LDRSHT                                                                                                                          \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("LDRSHT", 72, 165);
#endif
#ifndef CPU_EXEC_LDRSHT1
#define CPU_EXEC_LDRSHT1                                                                                                                         \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("LDRSHT", 73, 165);
#endif
#ifndef CPU_EXEC_LDRT
#define CPU_EXEC_LDRT                                                                                          \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                          \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("LDRT", 74, 167);
#endif
#ifndef CPU_EXEC_LDRT1
#define CPU_EXEC_LDRT1                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("LDRT", 75, 168);
#endif
#ifndef CPU_EXEC_LSL
#define CPU_EXEC_LSL                                                                                                                             \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("LSL", 76, 169);
#endif
#ifndef CPU_EXEC_LSL1
#define CPU_EXEC_LSL1                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("LSL", 77, 171);
#endif
#ifndef CPU_EXEC_LSR
#define CPU_EXEC_LSR                                                                                                                             \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("LSR", 78, 173);
#endif
#ifndef CPU_EXEC_LSR1
#define CPU_EXEC_LSR1                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("LSR", 79, 175);
#endif
#ifndef CPU_EXEC_MCR
#define CPU_EXEC_MCR                                                                                                                                                                \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 8, 3))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 24, 3)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("MCR", 80, 177);
#endif
#ifndef CPU_EXEC_MCR1
#define CPU_EXEC_MCR1                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 8, 3))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 24, 3)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("MCR", 81, 177);
#endif
#ifndef CPU_EXEC_MCRR
#define CPU_EXEC_MCRR                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 24, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("MCRR", 82, 179);
#endif
#ifndef CPU_EXEC_MCRR1
#define CPU_EXEC_MCRR1                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 20, 4)) SET_REG_PARAM(4, bit(insn, 24, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("MCRR", 83, 179);
#endif
#ifndef CPU_EXEC_MLA
#define CPU_EXEC_MLA                                                                                                                             \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("MLA", 84, 181);
#endif
#ifndef CPU_EXEC_MLS
#define CPU_EXEC_MLS                                                                                          \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("MLS", 85, 183);
#endif
#ifndef CPU_EXEC_MOV
#define CPU_EXEC_MOV                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                         \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("MOV", 86, 185);
#endif
#ifndef CPU_EXEC_MOVW
#define CPU_EXEC_MOVW                                                       \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                      \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 12)); \
    inst_name("MOVW", 87, 185);
#endif
#ifndef CPU_EXEC_MOV1
#define CPU_EXEC_MOV1                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                        \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("MOV", 88, 189);
#endif
#ifndef CPU_EXEC_MOVT
#define CPU_EXEC_MOVT                                                       \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                      \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 12)); \
    inst_name("MOVT", 89, 192);
#endif
#ifndef CPU_EXEC_MRC
#define CPU_EXEC_MRC                                                                                                                                                                \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 8, 3))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 24, 3)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("MRC", 90, 193);
#endif
#ifndef CPU_EXEC_MRC1
#define CPU_EXEC_MRC1                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 8, 3))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 24, 3)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("MRC", 91, 193);
#endif
#ifndef CPU_EXEC_MRRC
#define CPU_EXEC_MRRC                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 24, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("MRRC", 92, 195);
#endif
#ifndef CPU_EXEC_MRRC1
#define CPU_EXEC_MRRC1                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 20, 4)) SET_REG_PARAM(4, bit(insn, 24, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("MRRC", 93, 195);
#endif
#ifndef CPU_EXEC_MRS
#define CPU_EXEC_MRS                                                                                                                                                                \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 2)) SET_REG_PARAM(6, bit(insn, 23, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("MRS", 94, 197);
#endif
#ifndef CPU_EXEC_MSR
#define CPU_EXEC_MSR                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                          \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("MSR", 95, 199);
#endif
#ifndef CPU_EXEC_MSR1
#define CPU_EXEC_MSR1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 2)) SET_REG_PARAM(6, bit(insn, 23, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("MSR", 96, 201);
#endif
#ifndef CPU_EXEC_MUL
#define CPU_EXEC_MUL                                                                                                                             \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("MUL", 97, 203);
#endif
#ifndef CPU_EXEC_MVN
#define CPU_EXEC_MVN                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                         \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("MVN", 98, 205);
#endif
#ifndef CPU_EXEC_MVN1
#define CPU_EXEC_MVN1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("MVN", 99, 207);
#endif
#ifndef CPU_EXEC_MVN2
#define CPU_EXEC_MVN2                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("MVN", 100, 209);
#endif
#ifndef CPU_EXEC_NOP
#define CPU_EXEC_NOP                    \
    SET_REG_PARAM(0, 3);                \
    SET_REG_PARAM(1, bit(insn, 0, 4))   \
    SET_REG_PARAM(2, bit(insn, 16, 4))  \
    SET_REG_PARAM(3, bit(insn, 20, 4)); \
    inst_name("NOP", 101, 211);
#endif
#ifndef CPU_EXEC_ORR
#define CPU_EXEC_ORR                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                         \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("ORR", 102, 217);
#endif
#ifndef CPU_EXEC_ORR1
#define CPU_EXEC_ORR1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("ORR", 103, 219);
#endif
#ifndef CPU_EXEC_ORR2
#define CPU_EXEC_ORR2                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("ORR", 104, 221);
#endif
#ifndef CPU_EXEC_PKH
#define CPU_EXEC_PKH                                                                                                                             \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 5)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("PKH", 105, 223);
#endif
#ifndef CPU_EXEC_PLD
#define CPU_EXEC_PLD                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 8, 1))                                                                          \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                          \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("PLD", 106, 225);
#endif
#ifndef CPU_EXEC_PLD1
#define CPU_EXEC_PLD1                                                       \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 8, 1))                                       \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                       \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 12)); \
    inst_name("PLD", 107, 227);
#endif
#ifndef CPU_EXEC_PLD2
#define CPU_EXEC_PLD2                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 8, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("PLD", 108, 229);
#endif
#ifndef CPU_EXEC_PLI
#define CPU_EXEC_PLI                                                        \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 8, 1))                                       \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                      \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 12)); \
    inst_name("PLI", 109, 231);
#endif
#ifndef CPU_EXEC_PLI1
#define CPU_EXEC_PLI1                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 8, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 5)) SET_REG_PARAM(5, bit(insn, 25, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("PLI", 110, 233);
#endif
#ifndef CPU_EXEC_POP
#define CPU_EXEC_POP                     \
    SET_REG_PARAM(0, 2);                 \
    SET_REG_PARAM(1, bit(insn, 0, 4))    \
    SET_REG_PARAM(2, bit(insn, 16, 16)); \
    inst_name("POP", 111, 237);
#endif
#ifndef CPU_EXEC_PUSH
#define CPU_EXEC_PUSH                    \
    SET_REG_PARAM(0, 2);                 \
    SET_REG_PARAM(1, bit(insn, 0, 4))    \
    SET_REG_PARAM(2, bit(insn, 16, 16)); \
    inst_name("PUSH", 112, 239);
#endif
#ifndef CPU_EXEC_PUSH1
#define CPU_EXEC_PUSH1                  \
    SET_REG_PARAM(0, 2);                \
    SET_REG_PARAM(1, bit(insn, 0, 4))   \
    SET_REG_PARAM(2, bit(insn, 16, 4)); \
    inst_name("PUSH", 113, 239);
#endif
#ifndef CPU_EXEC_QADD
#define CPU_EXEC_QADD                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("QADD", 114, 241);
#endif
#ifndef CPU_EXEC_QADD16
#define CPU_EXEC_QADD16                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("QADD16", 115, 243);
#endif
#ifndef CPU_EXEC_QADD8
#define CPU_EXEC_QADD8                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("QADD8", 116, 245);
#endif
#ifndef CPU_EXEC_QASX
#define CPU_EXEC_QASX                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("QASX", 117, 247);
#endif
#ifndef CPU_EXEC_QDADD
#define CPU_EXEC_QDADD                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("QDADD", 118, 249);
#endif
#ifndef CPU_EXEC_QDSUB
#define CPU_EXEC_QDSUB                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("QDSUB", 119, 251);
#endif
#ifndef CPU_EXEC_QSAX
#define CPU_EXEC_QSAX                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("QSAX", 120, 253);
#endif
#ifndef CPU_EXEC_QSUB
#define CPU_EXEC_QSUB                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("QSUB", 121, 255);
#endif
#ifndef CPU_EXEC_QSUB16
#define CPU_EXEC_QSUB16                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("QSUB16", 122, 257);
#endif
#ifndef CPU_EXEC_QSUB8
#define CPU_EXEC_QSUB8                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("QSUB8", 123, 259);
#endif
#ifndef CPU_EXEC_RBIT
#define CPU_EXEC_RBIT                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("RBIT", 124, 261);
#endif
#ifndef CPU_EXEC_REV
#define CPU_EXEC_REV                                                                                          \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("REV", 125, 263);
#endif
#ifndef CPU_EXEC_REV16
#define CPU_EXEC_REV16                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("REV16", 126, 265);
#endif
#ifndef CPU_EXEC_REVSH
#define CPU_EXEC_REVSH                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("REVSH", 127, 267);
#endif
#ifndef CPU_EXEC_ROR
#define CPU_EXEC_ROR                                                                                                                             \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("ROR", 128, 269);
#endif
#ifndef CPU_EXEC_ROR1
#define CPU_EXEC_ROR1                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("ROR", 129, 271);
#endif
#ifndef CPU_EXEC_RRX
#define CPU_EXEC_RRX                                                                                          \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                        \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("RRX", 130, 273);
#endif
#ifndef CPU_EXEC_RSB
#define CPU_EXEC_RSB                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                         \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("RSB", 131, 275);
#endif
#ifndef CPU_EXEC_RSB1
#define CPU_EXEC_RSB1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("RSB", 132, 277);
#endif
#ifndef CPU_EXEC_RSB2
#define CPU_EXEC_RSB2                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("RSB", 133, 279);
#endif
#ifndef CPU_EXEC_RSC
#define CPU_EXEC_RSC                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                         \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("RSC", 134, 281);
#endif
#ifndef CPU_EXEC_RSC1
#define CPU_EXEC_RSC1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("RSC", 135, 283);
#endif
#ifndef CPU_EXEC_RSC2
#define CPU_EXEC_RSC2                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("RSC", 136, 285);
#endif
#ifndef CPU_EXEC_SADD16
#define CPU_EXEC_SADD16                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SADD16", 137, 287);
#endif
#ifndef CPU_EXEC_SADD8
#define CPU_EXEC_SADD8                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SADD8", 138, 289);
#endif
#ifndef CPU_EXEC_SASX
#define CPU_EXEC_SASX                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SASX", 139, 291);
#endif
#ifndef CPU_EXEC_SBC
#define CPU_EXEC_SBC                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                         \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("SBC", 140, 293);
#endif
#ifndef CPU_EXEC_SBC1
#define CPU_EXEC_SBC1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("SBC", 141, 295);
#endif
#ifndef CPU_EXEC_SBC2
#define CPU_EXEC_SBC2                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("SBC", 142, 297);
#endif
#ifndef CPU_EXEC_SBFX
#define CPU_EXEC_SBFX                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 11, 5))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 5)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SBFX", 143, 299);
#endif
#ifndef CPU_EXEC_SDIV
#define CPU_EXEC_SDIV                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SDIV", 144, 301);
#endif
#ifndef CPU_EXEC_SEL
#define CPU_EXEC_SEL                                                                                          \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SEL", 145, 303);
#endif
#ifndef CPU_EXEC_SETEND
#define CPU_EXEC_SETEND                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 12, 3))                                                                        \
    SET_REG_PARAM(2, bit(insn, 16, 6))                                                                        \
    SET_REG_PARAM(3, bit(insn, 22, 1)) SET_REG_PARAM(4, bit(insn, 23, 1)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SETEND", 146, 305);
#endif
#ifndef CPU_EXEC_SEV
#define CPU_EXEC_SEV                    \
    SET_REG_PARAM(0, 3);                \
    SET_REG_PARAM(1, bit(insn, 0, 4))   \
    SET_REG_PARAM(2, bit(insn, 16, 4))  \
    SET_REG_PARAM(3, bit(insn, 20, 4)); \
    inst_name("SEV", 147, 307);
#endif
#ifndef CPU_EXEC_SHADD16
#define CPU_EXEC_SHADD16                                                                                      \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SHADD16", 148, 309);
#endif
#ifndef CPU_EXEC_SHADD8
#define CPU_EXEC_SHADD8                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SHADD8", 149, 311);
#endif
#ifndef CPU_EXEC_SHASX
#define CPU_EXEC_SHASX                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SHASX", 150, 313);
#endif
#ifndef CPU_EXEC_SHSAX
#define CPU_EXEC_SHSAX                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SHSAX", 151, 315);
#endif
#ifndef CPU_EXEC_SHSUB16
#define CPU_EXEC_SHSUB16                                                                                      \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SHSUB16", 152, 317);
#endif
#ifndef CPU_EXEC_SHSUB8
#define CPU_EXEC_SHSUB8                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SHSUB8", 153, 319);
#endif
#ifndef CPU_EXEC_SMLA
#define CPU_EXEC_SMLA                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("SMLA", 154, 321);
#endif
#ifndef CPU_EXEC_SMLAD
#define CPU_EXEC_SMLAD                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SMLAD", 155, 323);
#endif
#ifndef CPU_EXEC_SMLAL
#define CPU_EXEC_SMLAL                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SMLAL", 156, 325);
#endif
#ifndef CPU_EXEC_SMLALBB
#define CPU_EXEC_SMLALBB                                                                                                                                                            \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("SMLALBB", 157, 327);
#endif
#ifndef CPU_EXEC_SMLALD
#define CPU_EXEC_SMLALD                                                                                                                          \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SMLALD", 158, 329);
#endif
#ifndef CPU_EXEC_SMLAWB
#define CPU_EXEC_SMLAWB                                                                                                                          \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SMLAWB", 159, 331);
#endif
#ifndef CPU_EXEC_SMLSD
#define CPU_EXEC_SMLSD                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SMLSD", 160, 333);
#endif
#ifndef CPU_EXEC_SMLSLD
#define CPU_EXEC_SMLSLD                                                                                                                          \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SMLSLD", 161, 335);
#endif
#ifndef CPU_EXEC_SMMLA
#define CPU_EXEC_SMMLA                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SMMLA", 162, 337);
#endif
#ifndef CPU_EXEC_SMMLS
#define CPU_EXEC_SMMLS                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SMMLS", 163, 339);
#endif
#ifndef CPU_EXEC_SMMUL
#define CPU_EXEC_SMMUL                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 20, 4)) SET_REG_PARAM(4, bit(insn, 26, 1)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SMMUL", 164, 341);
#endif
#ifndef CPU_EXEC_SMUAD
#define CPU_EXEC_SMUAD                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 20, 4)) SET_REG_PARAM(4, bit(insn, 26, 1)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SMUAD", 165, 343);
#endif
#ifndef CPU_EXEC_SMULBB
#define CPU_EXEC_SMULBB                                                                                                                                                             \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("SMULBB", 166, 345);
#endif
#ifndef CPU_EXEC_SMULL
#define CPU_EXEC_SMULL                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SMULL", 167, 347);
#endif
#ifndef CPU_EXEC_SMULWB
#define CPU_EXEC_SMULWB                                                                                                                          \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SMULWB", 168, 349);
#endif
#ifndef CPU_EXEC_SMUSD
#define CPU_EXEC_SMUSD                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 20, 4)) SET_REG_PARAM(4, bit(insn, 26, 1)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SMUSD", 169, 351);
#endif
#ifndef CPU_EXEC_SSAT
#define CPU_EXEC_SSAT                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 5))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 5)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SSAT", 170, 353);
#endif
#ifndef CPU_EXEC_SSAT16
#define CPU_EXEC_SSAT16                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SSAT16", 171, 355);
#endif
#ifndef CPU_EXEC_SSAX
#define CPU_EXEC_SSAX                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SSAX", 172, 357);
#endif
#ifndef CPU_EXEC_SSUB16
#define CPU_EXEC_SSUB16                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SSUB16", 173, 359);
#endif
#ifndef CPU_EXEC_SSUB8
#define CPU_EXEC_SSUB8                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SSUB8", 174, 361);
#endif
#ifndef CPU_EXEC_STC
#define CPU_EXEC_STC                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                                                   \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                                                   \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 9, 1)) SET_REG_PARAM(5, bit(insn, 10, 1)) SET_REG_PARAM(6, bit(insn, 12, 4)) SET_REG_PARAM(7, bit(insn, 16, 4)) SET_REG_PARAM(8, bit(insn, 20, 4)) SET_REG_PARAM(9, bit(insn, 24, 8)); \
    inst_name("STC", 175, 363);
#endif
#ifndef CPU_EXEC_STM
#define CPU_EXEC_STM                                                        \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 10, 1))                                      \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 16)); \
    inst_name("STM", 176, 365);
#endif
#ifndef CPU_EXEC_STMDA
#define CPU_EXEC_STMDA                                                      \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 10, 1))                                      \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 16)); \
    inst_name("STMDA", 177, 367);
#endif
#ifndef CPU_EXEC_STMDB
#define CPU_EXEC_STMDB                                                      \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 10, 1))                                      \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 16)); \
    inst_name("STMDB", 178, 369);
#endif
#ifndef CPU_EXEC_STMIB
#define CPU_EXEC_STMIB                                                      \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 10, 1))                                      \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 16)); \
    inst_name("STMIB", 179, 371);
#endif
#ifndef CPU_EXEC_STR
#define CPU_EXEC_STR                                                                                                                                                                \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 12)); \
    inst_name("STR", 180, 375);
#endif
#ifndef CPU_EXEC_STR1
#define CPU_EXEC_STR1                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                 \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                                                    \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                                                    \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 5)) SET_REG_PARAM(8, bit(insn, 25, 2)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("STR", 181, 377);
#endif
#ifndef CPU_EXEC_STRB
#define CPU_EXEC_STRB                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 12)); \
    inst_name("STRB", 182, 381);
#endif
#ifndef CPU_EXEC_STRB1
#define CPU_EXEC_STRB1                                                                                                                                                                                                                                   \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                 \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                                                    \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                                                    \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 5)) SET_REG_PARAM(8, bit(insn, 25, 2)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("STRB", 183, 383);
#endif
#ifndef CPU_EXEC_STRBT
#define CPU_EXEC_STRBT                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                          \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("STRBT", 184, 385);
#endif
#ifndef CPU_EXEC_STRBT1
#define CPU_EXEC_STRBT1                                                                                                                                                             \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("STRBT", 185, 386);
#endif
#ifndef CPU_EXEC_STRD
#define CPU_EXEC_STRD                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("STRD", 186, 387);
#endif
#ifndef CPU_EXEC_STRD1
#define CPU_EXEC_STRD1                                                                                                                                                                                                \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("STRD", 187, 389);
#endif
#ifndef CPU_EXEC_STREX
#define CPU_EXEC_STREX                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("STREX", 188, 391);
#endif
#ifndef CPU_EXEC_STREXB
#define CPU_EXEC_STREXB                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("STREXB", 189, 393);
#endif
#ifndef CPU_EXEC_STREXD
#define CPU_EXEC_STREXD                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("STREXD", 190, 395);
#endif
#ifndef CPU_EXEC_STREXH
#define CPU_EXEC_STREXH                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("STREXH", 191, 397);
#endif
#ifndef CPU_EXEC_STRH
#define CPU_EXEC_STRH                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("STRH", 192, 401);
#endif
#ifndef CPU_EXEC_STRH1
#define CPU_EXEC_STRH1                                                                                                                                                                                                \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 10, 1)) SET_REG_PARAM(5, bit(insn, 12, 4)) SET_REG_PARAM(6, bit(insn, 16, 4)) SET_REG_PARAM(7, bit(insn, 20, 4)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("STRH", 193, 403);
#endif
#ifndef CPU_EXEC_STRHT
#define CPU_EXEC_STRHT                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("STRHT", 194, 405);
#endif
#ifndef CPU_EXEC_STRHT1
#define CPU_EXEC_STRHT1                                                                                                                          \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("STRHT", 195, 405);
#endif
#ifndef CPU_EXEC_STRT
#define CPU_EXEC_STRT                                                                                          \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                          \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("STRT", 196, 407);
#endif
#ifndef CPU_EXEC_STRT1
#define CPU_EXEC_STRT1                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("STRT", 197, 408);
#endif
#ifndef CPU_EXEC_SUB
#define CPU_EXEC_SUB                                                                                           \
    SET_REG_PARAM(0, 5);                                                                                       \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                          \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                         \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 12)); \
    inst_name("SUB", 198, 411);
#endif
#ifndef CPU_EXEC_SUB1
#define CPU_EXEC_SUB1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 5)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("SUB", 199, 413);
#endif
#ifndef CPU_EXEC_SUB2
#define CPU_EXEC_SUB2                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("SUB", 200, 415);
#endif
#ifndef CPU_EXEC_SVC
#define CPU_EXEC_SVC                    \
    SET_REG_PARAM(0, 2);                \
    SET_REG_PARAM(1, bit(insn, 0, 4))   \
    SET_REG_PARAM(2, bit(insn, 8, 24)); \
    inst_name("SVC", 201, 421);
#endif
#ifndef CPU_EXEC_SWP
#define CPU_EXEC_SWP                                                                                                                             \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SWP", 202, 423);
#endif
#ifndef CPU_EXEC_SXTAB
#define CPU_EXEC_SXTAB                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 22, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SXTAB", 203, 425);
#endif
#ifndef CPU_EXEC_SXTAB16
#define CPU_EXEC_SXTAB16                                                                                                                         \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 22, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SXTAB16", 204, 427);
#endif
#ifndef CPU_EXEC_SXTAH
#define CPU_EXEC_SXTAH                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 22, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("SXTAH", 205, 429);
#endif
#ifndef CPU_EXEC_SXTB
#define CPU_EXEC_SXTB                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 20, 2)) SET_REG_PARAM(4, bit(insn, 22, 2)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SXTB", 206, 431);
#endif
#ifndef CPU_EXEC_SXTB16
#define CPU_EXEC_SXTB16                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 20, 2)) SET_REG_PARAM(4, bit(insn, 22, 2)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SXTB16", 207, 433);
#endif
#ifndef CPU_EXEC_SXTH
#define CPU_EXEC_SXTH                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 20, 2)) SET_REG_PARAM(4, bit(insn, 22, 2)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("SXTH", 208, 435);
#endif
#ifndef CPU_EXEC_TEQ
#define CPU_EXEC_TEQ                                                        \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                      \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 12)); \
    inst_name("TEQ", 209, 439);
#endif
#ifndef CPU_EXEC_TEQ1
#define CPU_EXEC_TEQ1                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 5)) SET_REG_PARAM(5, bit(insn, 25, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("TEQ", 210, 441);
#endif
#ifndef CPU_EXEC_TEQ2
#define CPU_EXEC_TEQ2                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 25, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("TEQ", 211, 443);
#endif
#ifndef CPU_EXEC_TST
#define CPU_EXEC_TST                                                        \
    SET_REG_PARAM(0, 4);                                                    \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                       \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                      \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 12)); \
    inst_name("TST", 212, 445);
#endif
#ifndef CPU_EXEC_TST1
#define CPU_EXEC_TST1                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 5)) SET_REG_PARAM(5, bit(insn, 25, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("TST", 213, 447);
#endif
#ifndef CPU_EXEC_TST2
#define CPU_EXEC_TST2                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 25, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("TST", 214, 449);
#endif
#ifndef CPU_EXEC_UADD16
#define CPU_EXEC_UADD16                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UADD16", 215, 451);
#endif
#ifndef CPU_EXEC_UADD8
#define CPU_EXEC_UADD8                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UADD8", 216, 453);
#endif
#ifndef CPU_EXEC_UASX
#define CPU_EXEC_UASX                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UASX", 217, 455);
#endif
#ifndef CPU_EXEC_UBFX
#define CPU_EXEC_UBFX                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 11, 5))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 5)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UBFX", 218, 457);
#endif
#ifndef CPU_EXEC_UDF
#define CPU_EXEC_UDF                    \
    SET_REG_PARAM(0, 2);                \
    SET_REG_PARAM(1, bit(insn, 12, 12)) \
    SET_REG_PARAM(2, bit(insn, 28, 4)); \
    inst_name("UDF", 219, 459);
#endif
#ifndef CPU_EXEC_UDIV
#define CPU_EXEC_UDIV                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UDIV", 220, 461);
#endif
#ifndef CPU_EXEC_UHADD16
#define CPU_EXEC_UHADD16                                                                                      \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UHADD16", 221, 463);
#endif
#ifndef CPU_EXEC_UHADD8
#define CPU_EXEC_UHADD8                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UHADD8", 222, 465);
#endif
#ifndef CPU_EXEC_UHASX
#define CPU_EXEC_UHASX                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UHASX", 223, 467);
#endif
#ifndef CPU_EXEC_UHSAX
#define CPU_EXEC_UHSAX                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UHSAX", 224, 469);
#endif
#ifndef CPU_EXEC_UHSUB16
#define CPU_EXEC_UHSUB16                                                                                      \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UHSUB16", 225, 471);
#endif
#ifndef CPU_EXEC_UHSUB8
#define CPU_EXEC_UHSUB8                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UHSUB8", 226, 473);
#endif
#ifndef CPU_EXEC_UMAAL
#define CPU_EXEC_UMAAL                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UMAAL", 227, 475);
#endif
#ifndef CPU_EXEC_UMLAL
#define CPU_EXEC_UMLAL                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("UMLAL", 228, 477);
#endif
#ifndef CPU_EXEC_UMULL
#define CPU_EXEC_UMULL                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("UMULL", 229, 479);
#endif
#ifndef CPU_EXEC_UQADD16
#define CPU_EXEC_UQADD16                                                                                      \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UQADD16", 230, 481);
#endif
#ifndef CPU_EXEC_UQADD8
#define CPU_EXEC_UQADD8                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UQADD8", 231, 483);
#endif
#ifndef CPU_EXEC_UQASX
#define CPU_EXEC_UQASX                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UQASX", 232, 485);
#endif
#ifndef CPU_EXEC_UQSAX
#define CPU_EXEC_UQSAX                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UQSAX", 233, 487);
#endif
#ifndef CPU_EXEC_UQSUB16
#define CPU_EXEC_UQSUB16                                                                                      \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UQSUB16", 234, 489);
#endif
#ifndef CPU_EXEC_UQSUB8
#define CPU_EXEC_UQSUB8                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UQSUB8", 235, 491);
#endif
#ifndef CPU_EXEC_USAD8
#define CPU_EXEC_USAD8                                                     \
    SET_REG_PARAM(0, 4);                                                   \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                      \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                     \
    SET_REG_PARAM(3, bit(insn, 20, 4)) SET_REG_PARAM(4, bit(insn, 28, 4)); \
    inst_name("USAD8", 236, 493);
#endif
#ifndef CPU_EXEC_USADA8
#define CPU_EXEC_USADA8                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("USADA8", 237, 495);
#endif
#ifndef CPU_EXEC_USAT
#define CPU_EXEC_USAT                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 5))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 5)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("USAT", 238, 497);
#endif
#ifndef CPU_EXEC_USAT16
#define CPU_EXEC_USAT16                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("USAT16", 239, 499);
#endif
#ifndef CPU_EXEC_USAX
#define CPU_EXEC_USAX                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("USAX", 240, 501);
#endif
#ifndef CPU_EXEC_USUB16
#define CPU_EXEC_USUB16                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("USUB16", 241, 503);
#endif
#ifndef CPU_EXEC_USUB8
#define CPU_EXEC_USUB8                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("USUB8", 242, 505);
#endif
#ifndef CPU_EXEC_UXTAB
#define CPU_EXEC_UXTAB                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 22, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("UXTAB", 243, 507);
#endif
#ifndef CPU_EXEC_UXTAB16
#define CPU_EXEC_UXTAB16                                                                                                                         \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 22, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("UXTAB16", 244, 509);
#endif
#ifndef CPU_EXEC_UXTAH
#define CPU_EXEC_UXTAH                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 22, 2)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("UXTAH", 245, 511);
#endif
#ifndef CPU_EXEC_UXTB
#define CPU_EXEC_UXTB                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 20, 2)) SET_REG_PARAM(4, bit(insn, 22, 2)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UXTB", 246, 513);
#endif
#ifndef CPU_EXEC_UXTB16
#define CPU_EXEC_UXTB16                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 20, 2)) SET_REG_PARAM(4, bit(insn, 22, 2)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UXTB16", 247, 515);
#endif
#ifndef CPU_EXEC_UXTH
#define CPU_EXEC_UXTH                                                                                         \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                         \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                                                        \
    SET_REG_PARAM(3, bit(insn, 20, 2)) SET_REG_PARAM(4, bit(insn, 22, 2)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("UXTH", 248, 517);
#endif
#ifndef CPU_EXEC_VABA
#define CPU_EXEC_VABA                                                                                                                                                                                                                                     \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VABA", 249, 519);
#endif
#ifndef CPU_EXEC_VABA1
#define CPU_EXEC_VABA1                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VABA", 250, 519);
#endif
#ifndef CPU_EXEC_VABD
#define CPU_EXEC_VABD                                                                                                                                                                                                                                     \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VABD", 251, 521);
#endif
#ifndef CPU_EXEC_VABD1
#define CPU_EXEC_VABD1                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VABD", 252, 521);
#endif
#ifndef CPU_EXEC_VABD2
#define CPU_EXEC_VABD2                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VABD", 253, 523);
#endif
#ifndef CPU_EXEC_VABS
#define CPU_EXEC_VABS                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 21, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VABS", 254, 525);
#endif
#ifndef CPU_EXEC_VABS1
#define CPU_EXEC_VABS1                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 23, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VABS", 255, 525);
#endif
#ifndef CPU_EXEC_VACGE
#define CPU_EXEC_VACGE                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 10, 1))                                                                                                                                                                                                                    \
    SET_REG_PARAM(3, bit(insn, 11, 1)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VACGE", 256, 527);
#endif
#ifndef CPU_EXEC_VADD
#define CPU_EXEC_VADD                                                                                                                                                                                                  \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VADD", 257, 529);
#endif
#ifndef CPU_EXEC_VADD1
#define CPU_EXEC_VADD1                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VADD", 258, 531);
#endif
#ifndef CPU_EXEC_VADD2
#define CPU_EXEC_VADD2                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 23, 1)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VADD", 259, 531);
#endif
#ifndef CPU_EXEC_VADDHN
#define CPU_EXEC_VADDHN                                                                                                                                                             \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VADDHN", 260, 533);
#endif
#ifndef CPU_EXEC_VADDL
#define CPU_EXEC_VADDL                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 23, 1)) SET_REG_PARAM(7, bit(insn, 24, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VADDL", 261, 535);
#endif
#ifndef CPU_EXEC_VAND
#define CPU_EXEC_VAND                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VAND", 262, 537);
#endif
#ifndef CPU_EXEC_VBIF
#define CPU_EXEC_VBIF                                                                                                                                                                                                  \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VBIF", 263, 543);
#endif
#ifndef CPU_EXEC_VCEQ
#define CPU_EXEC_VCEQ                                                                                                                                                                                                  \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VCEQ", 264, 545);
#endif
#ifndef CPU_EXEC_VCEQ1
#define CPU_EXEC_VCEQ1                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VCEQ", 265, 545);
#endif
#ifndef CPU_EXEC_VCEQ2
#define CPU_EXEC_VCEQ2                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 21, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VCEQ", 266, 547);
#endif
#ifndef CPU_EXEC_VCGE
#define CPU_EXEC_VCGE                                                                                                                                                                                                                                     \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VCGE", 267, 549);
#endif
#ifndef CPU_EXEC_VCGE1
#define CPU_EXEC_VCGE1                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VCGE", 268, 549);
#endif
#ifndef CPU_EXEC_VCGE2
#define CPU_EXEC_VCGE2                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 21, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VCGE", 269, 551);
#endif
#ifndef CPU_EXEC_VCGT
#define CPU_EXEC_VCGT                                                                                                                                                                                                                                     \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VCGT", 270, 553);
#endif
#ifndef CPU_EXEC_VCGT1
#define CPU_EXEC_VCGT1                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VCGT", 271, 553);
#endif
#ifndef CPU_EXEC_VCGT2
#define CPU_EXEC_VCGT2                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 21, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VCGT", 272, 555);
#endif
#ifndef CPU_EXEC_VCLE
#define CPU_EXEC_VCLE                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 21, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VCLE", 273, 557);
#endif
#ifndef CPU_EXEC_VCLS
#define CPU_EXEC_VCLS                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 25, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VCLS", 274, 559);
#endif
#ifndef CPU_EXEC_VCLT
#define CPU_EXEC_VCLT                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 21, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VCLT", 275, 561);
#endif
#ifndef CPU_EXEC_VCLZ
#define CPU_EXEC_VCLZ                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 25, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VCLZ", 276, 563);
#endif
#ifndef CPU_EXEC_VCMP
#define CPU_EXEC_VCMP                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 23, 1)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VCMP", 277, 565);
#endif
#ifndef CPU_EXEC_VCMP1
#define CPU_EXEC_VCMP1                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 23, 1)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VCMP", 278, 565);
#endif
#ifndef CPU_EXEC_VCNT
#define CPU_EXEC_VCNT                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 25, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VCNT", 279, 567);
#endif
#ifndef CPU_EXEC_VCVT
#define CPU_EXEC_VCVT                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 23, 2)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VCVT", 280, 569);
#endif
#ifndef CPU_EXEC_VCVT1
#define CPU_EXEC_VCVT1                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 13, 3)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 23, 1)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VCVT", 281, 571);
#endif
#ifndef CPU_EXEC_VCVT2
#define CPU_EXEC_VCVT2                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 10, 6)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 23, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VCVT", 282, 573);
#endif
#ifndef CPU_EXEC_VCVT3
#define CPU_EXEC_VCVT3                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 13, 1)) SET_REG_PARAM(4, bit(insn, 15, 1)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 23, 1)) SET_REG_PARAM(7, bit(insn, 24, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VCVT", 283, 575);
#endif
#ifndef CPU_EXEC_VCVT4
#define CPU_EXEC_VCVT4                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 23, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VCVT", 284, 577);
#endif
#ifndef CPU_EXEC_VCVT5
#define CPU_EXEC_VCVT5                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 23, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VCVT", 285, 579);
#endif
#ifndef CPU_EXEC_VCVTB
#define CPU_EXEC_VCVTB                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 15, 1)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 23, 1)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VCVTB", 286, 581);
#endif
#ifndef CPU_EXEC_VDIV
#define CPU_EXEC_VDIV                                                                                                                                                                                                  \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 23, 1)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VDIV", 287, 583);
#endif
#ifndef CPU_EXEC_VDUP
#define CPU_EXEC_VDUP                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 25, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VDUP", 288, 585);
#endif
#ifndef CPU_EXEC_VDUP1
#define CPU_EXEC_VDUP1                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 10, 1)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VDUP", 289, 587);
#endif
#ifndef CPU_EXEC_VEOR
#define CPU_EXEC_VEOR                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VEOR", 290, 589);
#endif
#ifndef CPU_EXEC_VEXT
#define CPU_EXEC_VEXT                                                                                                                                                                                                  \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VEXT", 291, 591);
#endif
#ifndef CPU_EXEC_VFMA
#define CPU_EXEC_VFMA                                                                                                                                                                                                                                     \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 10, 1))                                                                                                                                                                                                                    \
    SET_REG_PARAM(3, bit(insn, 11, 1)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VFMA", 292, 593);
#endif
#ifndef CPU_EXEC_VFMA1
#define CPU_EXEC_VFMA1                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 23, 1)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VFMA", 293, 593);
#endif
#ifndef CPU_EXEC_VFNMA
#define CPU_EXEC_VFNMA                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 23, 1)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VFNMA", 294, 595);
#endif
#ifndef CPU_EXEC_VHADD
#define CPU_EXEC_VHADD                                                                                                                                                                                                                                                                        \
    SET_REG_PARAM(0, 10);                                                                                                                                                                                                                                                                     \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                                                         \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                                                         \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 22, 1)) SET_REG_PARAM(7, bit(insn, 24, 1)) SET_REG_PARAM(8, bit(insn, 25, 1)) SET_REG_PARAM(9, bit(insn, 26, 1)) SET_REG_PARAM(10, bit(insn, 28, 4)); \
    inst_name("VHADD", 295, 597);
#endif
#ifndef CPU_EXEC_VLD1
#define CPU_EXEC_VLD1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 24, 2)) SET_REG_PARAM(6, bit(insn, 26, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VLD1", 296, 599);
#endif
#ifndef CPU_EXEC_VLD11
#define CPU_EXEC_VLD11                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 24, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VLD1", 297, 601);
#endif
#ifndef CPU_EXEC_VLD12
#define CPU_EXEC_VLD12                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 2)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 27, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VLD1", 298, 603);
#endif
#ifndef CPU_EXEC_VLD2
#define CPU_EXEC_VLD2                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 24, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VLD2", 299, 607);
#endif
#ifndef CPU_EXEC_VLD21
#define CPU_EXEC_VLD21                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 2)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 27, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VLD2", 300, 609);
#endif
#ifndef CPU_EXEC_VLD3
#define CPU_EXEC_VLD3                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 24, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VLD3", 301, 613);
#endif
#ifndef CPU_EXEC_VLD31
#define CPU_EXEC_VLD31                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 2)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 27, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VLD3", 302, 615);
#endif
#ifndef CPU_EXEC_VLD4
#define CPU_EXEC_VLD4                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 24, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VLD4", 303, 619);
#endif
#ifndef CPU_EXEC_VLD41
#define CPU_EXEC_VLD41                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 2)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 27, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VLD4", 304, 621);
#endif
#ifndef CPU_EXEC_VLDM
#define CPU_EXEC_VLDM                                                                                                                                                                                                \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                             \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 9, 1)) SET_REG_PARAM(5, bit(insn, 10, 1)) SET_REG_PARAM(6, bit(insn, 12, 4)) SET_REG_PARAM(7, bit(insn, 16, 4)) SET_REG_PARAM(8, bit(insn, 24, 8)); \
    inst_name("VLDM", 305, 623);
#endif
#ifndef CPU_EXEC_VLDM1
#define CPU_EXEC_VLDM1                                                                                                                                                                                               \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                             \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 9, 1)) SET_REG_PARAM(5, bit(insn, 10, 1)) SET_REG_PARAM(6, bit(insn, 12, 4)) SET_REG_PARAM(7, bit(insn, 16, 4)) SET_REG_PARAM(8, bit(insn, 24, 8)); \
    inst_name("VLDM", 306, 623);
#endif
#ifndef CPU_EXEC_VMAX
#define CPU_EXEC_VMAX                                                                                                                                                                                                                                                                         \
    SET_REG_PARAM(0, 10);                                                                                                                                                                                                                                                                     \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                                                         \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                                                         \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 27, 1)) SET_REG_PARAM(10, bit(insn, 28, 4)); \
    inst_name("VMAX", 307, 627);
#endif
#ifndef CPU_EXEC_VMAX1
#define CPU_EXEC_VMAX1                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 10, 1))                                                                                                                                                                                                                    \
    SET_REG_PARAM(3, bit(insn, 11, 1)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VMAX", 308, 629);
#endif
#ifndef CPU_EXEC_VMOV
#define CPU_EXEC_VMOV                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VMOV", 309, 639);
#endif
#ifndef CPU_EXEC_VMOV1
#define CPU_EXEC_VMOV1                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 23, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VMOV", 310, 639);
#endif
#ifndef CPU_EXEC_VMOV2
#define CPU_EXEC_VMOV2                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 9, 2))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VMOV", 311, 641);
#endif
#ifndef CPU_EXEC_VMOV3
#define CPU_EXEC_VMOV3                                                                                                                                                                                                \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                              \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(2, bit(insn, 8, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 9, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 2)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VMOV", 312, 643);
#endif
#ifndef CPU_EXEC_VMOV4
#define CPU_EXEC_VMOV4                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VMOV", 313, 645);
#endif
#ifndef CPU_EXEC_VMOV5
#define CPU_EXEC_VMOV5                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VMOV", 314, 647);
#endif
#ifndef CPU_EXEC_VMOV6
#define CPU_EXEC_VMOV6                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VMOV", 315, 649);
#endif
#ifndef CPU_EXEC_VMOVL
#define CPU_EXEC_VMOVL                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 10, 3)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VMOVL", 316, 651);
#endif
#ifndef CPU_EXEC_VMOVN
#define CPU_EXEC_VMOVN                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 26, 1)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("VMOVN", 317, 653);
#endif
#ifndef CPU_EXEC_VMRS
#define CPU_EXEC_VMRS                                                      \
    SET_REG_PARAM(0, 4);                                                   \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                      \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                     \
    SET_REG_PARAM(3, bit(insn, 24, 3)) SET_REG_PARAM(4, bit(insn, 28, 4)); \
    inst_name("VMRS", 318, 655);
#endif
#ifndef CPU_EXEC_VMSR
#define CPU_EXEC_VMSR                                                      \
    SET_REG_PARAM(0, 4);                                                   \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                      \
    SET_REG_PARAM(2, bit(insn, 16, 4))                                     \
    SET_REG_PARAM(3, bit(insn, 24, 3)) SET_REG_PARAM(4, bit(insn, 28, 4)); \
    inst_name("VMSR", 319, 657);
#endif
#ifndef CPU_EXEC_VORR
#define CPU_EXEC_VORR                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VORR", 320, 677);
#endif
#ifndef CPU_EXEC_VORR1
#define CPU_EXEC_VORR1                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 13, 3)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VORR", 321, 675);
#endif
#ifndef CPU_EXEC_VBIC
#define CPU_EXEC_VBIC                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 13, 3)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 20, 4)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VBIC", 322, 539);
#endif
#ifndef CPU_EXEC_VBIC1
#define CPU_EXEC_VBIC1                                                                                                                                                              \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VBIC", 323, 541);
#endif
#ifndef CPU_EXEC_VMVN
#define CPU_EXEC_VMVN                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 25, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VMVN", 324, 667);
#endif
#ifndef CPU_EXEC_VNEG
#define CPU_EXEC_VNEG                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 21, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VNEG", 325, 669);
#endif
#ifndef CPU_EXEC_VNEG1
#define CPU_EXEC_VNEG1                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 23, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VNEG", 326, 669);
#endif
#ifndef CPU_EXEC_VNMLA
#define CPU_EXEC_VNMLA                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 23, 1)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VNMLA", 327, 671);
#endif
#ifndef CPU_EXEC_VNMLA1
#define CPU_EXEC_VNMLA1                                                                                                                                                                                                \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 23, 1)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VNMLA", 328, 671);
#endif
#ifndef CPU_EXEC_VORN
#define CPU_EXEC_VORN                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VORN", 329, 673);
#endif
#ifndef CPU_EXEC_VPADAL
#define CPU_EXEC_VPADAL                                                                                                                                                             \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VPADAL", 330, 679);
#endif
#ifndef CPU_EXEC_VPADD
#define CPU_EXEC_VPADD                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VPADD", 331, 681);
#endif
#ifndef CPU_EXEC_VPADD1
#define CPU_EXEC_VPADD1                                                                                                                                                                                                \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VPADD", 332, 683);
#endif
#ifndef CPU_EXEC_VPADDL
#define CPU_EXEC_VPADDL                                                                                                                                                             \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VPADDL", 333, 685);
#endif
#ifndef CPU_EXEC_VPOP
#define CPU_EXEC_VPOP                                                      \
    SET_REG_PARAM(0, 4);                                                   \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                      \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                      \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 8)); \
    inst_name("VPOP", 334, 691);
#endif
#ifndef CPU_EXEC_VPOP1
#define CPU_EXEC_VPOP1                                                     \
    SET_REG_PARAM(0, 4);                                                   \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                      \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                      \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 8)); \
    inst_name("VPOP", 335, 691);
#endif
#ifndef CPU_EXEC_VPUSH
#define CPU_EXEC_VPUSH                                                     \
    SET_REG_PARAM(0, 4);                                                   \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                      \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                      \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 8)); \
    inst_name("VPUSH", 336, 693);
#endif
#ifndef CPU_EXEC_VPUSH1
#define CPU_EXEC_VPUSH1                                                    \
    SET_REG_PARAM(0, 4);                                                   \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                      \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                      \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 8)); \
    inst_name("VPUSH", 337, 693);
#endif
#ifndef CPU_EXEC_VQABS
#define CPU_EXEC_VQABS                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 25, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VQABS", 338, 695);
#endif
#ifndef CPU_EXEC_VQADD
#define CPU_EXEC_VQADD                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VQADD", 339, 697);
#endif
#ifndef CPU_EXEC_VQDMLAL
#define CPU_EXEC_VQDMLAL                                                                                                                                                                                               \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 22, 1)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VQDMLAL", 340, 699);
#endif
#ifndef CPU_EXEC_VQDMLAL1
#define CPU_EXEC_VQDMLAL1                                                                                                                                                                                              \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 21, 1)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VQDMLAL", 341, 699);
#endif
#ifndef CPU_EXEC_VQDMULH
#define CPU_EXEC_VQDMULH                                                                                                                                                                                               \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VQDMULH", 342, 701);
#endif
#ifndef CPU_EXEC_VQDMULH1
#define CPU_EXEC_VQDMULH1                                                                                                                                                                                              \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VQDMULH", 343, 701);
#endif
#ifndef CPU_EXEC_VQDMULL
#define CPU_EXEC_VQDMULL                                                                                                                                                            \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VQDMULL", 344, 703);
#endif
#ifndef CPU_EXEC_VQDMULL1
#define CPU_EXEC_VQDMULL1                                                                                                                                                           \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VQDMULL", 345, 703);
#endif
#ifndef CPU_EXEC_VQMOVN
#define CPU_EXEC_VQMOVN                                                                                                                          \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 2)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VQMOVN", 346, 705);
#endif
#ifndef CPU_EXEC_VQNEG
#define CPU_EXEC_VQNEG                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 25, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VQNEG", 347, 707);
#endif
#ifndef CPU_EXEC_VQRDMULH
#define CPU_EXEC_VQRDMULH                                                                                                                                                                                              \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VQRDMULH", 348, 709);
#endif
#ifndef CPU_EXEC_VQRDMULH1
#define CPU_EXEC_VQRDMULH1                                                                                                                                                                                             \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VQRDMULH", 349, 709);
#endif
#ifndef CPU_EXEC_VQRSHL
#define CPU_EXEC_VQRSHL                                                                                                                                                                                                                                   \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VQRSHL", 350, 711);
#endif
#ifndef CPU_EXEC_VQRSHRN
#define CPU_EXEC_VQRSHRN                                                                                                                                                            \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 10, 6)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 23, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VQRSHRN", 351, 713);
#endif
#ifndef CPU_EXEC_VQSHL
#define CPU_EXEC_VQSHL                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VQSHL", 352, 715);
#endif
#ifndef CPU_EXEC_VQSHL1
#define CPU_EXEC_VQSHL1                                                                                                                                                                                                                                   \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 6)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 23, 1)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VQSHL", 353, 717);
#endif
#ifndef CPU_EXEC_VQSHRN
#define CPU_EXEC_VQSHRN                                                                                                                                                             \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(3, bit(insn, 10, 6)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 23, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VQSHRN", 354, 719);
#endif
#ifndef CPU_EXEC_VQSUB
#define CPU_EXEC_VQSUB                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VQSUB", 355, 721);
#endif
#ifndef CPU_EXEC_VRADDHN
#define CPU_EXEC_VRADDHN                                                                                                                                                            \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VRADDHN", 356, 723);
#endif
#ifndef CPU_EXEC_VRECPE
#define CPU_EXEC_VRECPE                                                                                                                                                             \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 23, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VRECPE", 357, 725);
#endif
#ifndef CPU_EXEC_VRECPS
#define CPU_EXEC_VRECPS                                                                                                                                                                                                \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VRECPS", 358, 727);
#endif
#ifndef CPU_EXEC_VREV16
#define CPU_EXEC_VREV16                                                                                                                                                             \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 23, 2)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VREV16", 359, 729);
#endif
#ifndef CPU_EXEC_VRHADD
#define CPU_EXEC_VRHADD                                                                                                                                                                                                                                   \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VRHADD", 360, 731);
#endif
#ifndef CPU_EXEC_VRSHL
#define CPU_EXEC_VRSHL                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VRSHL", 361, 733);
#endif
#ifndef CPU_EXEC_VRSHR
#define CPU_EXEC_VRSHR                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 10, 6)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VRSHR", 362, 735);
#endif
#ifndef CPU_EXEC_VRSHRN
#define CPU_EXEC_VRSHRN                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                         \
    SET_REG_PARAM(2, bit(insn, 10, 6))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 26, 1)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("VRSHRN", 363, 737);
#endif
#ifndef CPU_EXEC_VRSQRTE
#define CPU_EXEC_VRSQRTE                                                                                                                                                            \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 23, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VRSQRTE", 364, 739);
#endif
#ifndef CPU_EXEC_VRSQRTS
#define CPU_EXEC_VRSQRTS                                                                                                                                                                                               \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 11, 1))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VRSQRTS", 365, 741);
#endif
#ifndef CPU_EXEC_VRSRA
#define CPU_EXEC_VRSRA                                                                                                                                                                                                 \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 10, 6)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VRSRA", 366, 743);
#endif
#ifndef CPU_EXEC_VRSUBHN
#define CPU_EXEC_VRSUBHN                                                                                                                                                            \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VRSUBHN", 367, 745);
#endif
#ifndef CPU_EXEC_VSHL
#define CPU_EXEC_VSHL                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 10, 6))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VSHL", 368, 747);
#endif
#ifndef CPU_EXEC_VSHL1
#define CPU_EXEC_VSHL1                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 25, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VSHL", 369, 749);
#endif
#ifndef CPU_EXEC_VSHLL
#define CPU_EXEC_VSHLL                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 10, 6)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VSHLL", 370, 751);
#endif
#ifndef CPU_EXEC_VSHLL1
#define CPU_EXEC_VSHLL1                                                                                       \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                         \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 26, 1)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("VSHLL", 371, 751);
#endif
#ifndef CPU_EXEC_VSHR
#define CPU_EXEC_VSHR                                                                                                                                                                                                  \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 10, 6)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VSHR", 372, 753);
#endif
#ifndef CPU_EXEC_VSHRN
#define CPU_EXEC_VSHRN                                                                                        \
    SET_REG_PARAM(0, 5);                                                                                      \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                         \
    SET_REG_PARAM(2, bit(insn, 10, 6))                                                                        \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 26, 1)) SET_REG_PARAM(5, bit(insn, 28, 4)); \
    inst_name("VSHRN", 373, 755);
#endif
#ifndef CPU_EXEC_VSLI
#define CPU_EXEC_VSLI                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 10, 6))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VSLI", 374, 757);
#endif
#ifndef CPU_EXEC_VSQRT
#define CPU_EXEC_VSQRT                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 23, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VSQRT", 375, 759);
#endif
#ifndef CPU_EXEC_VSRA
#define CPU_EXEC_VSRA                                                                                                                                                                                                  \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 10, 6)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VSRA", 376, 761);
#endif
#ifndef CPU_EXEC_VSRI
#define CPU_EXEC_VSRI                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 10, 6))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 24, 1)) SET_REG_PARAM(5, bit(insn, 25, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VSRI", 377, 763);
#endif
#ifndef CPU_EXEC_VST1
#define CPU_EXEC_VST1                                                                                                                                                               \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 4)) SET_REG_PARAM(5, bit(insn, 24, 2)) SET_REG_PARAM(6, bit(insn, 26, 2)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VST1", 378, 765);
#endif
#ifndef CPU_EXEC_VST11
#define CPU_EXEC_VST11                                                                                                                           \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 24, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VST1", 379, 767);
#endif
#ifndef CPU_EXEC_VST2
#define CPU_EXEC_VST2                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 24, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VST2", 380, 771);
#endif
#ifndef CPU_EXEC_VST3
#define CPU_EXEC_VST3                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 24, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VST3", 381, 775);
#endif
#ifndef CPU_EXEC_VST4
#define CPU_EXEC_VST4                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 20, 2)) SET_REG_PARAM(5, bit(insn, 24, 4)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VST4", 382, 779);
#endif
#ifndef CPU_EXEC_VSTM
#define CPU_EXEC_VSTM                                                                                                                                                                                                \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                             \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 9, 1)) SET_REG_PARAM(5, bit(insn, 10, 1)) SET_REG_PARAM(6, bit(insn, 12, 4)) SET_REG_PARAM(7, bit(insn, 16, 4)) SET_REG_PARAM(8, bit(insn, 24, 8)); \
    inst_name("VSTM", 383, 781);
#endif
#ifndef CPU_EXEC_VSTM1
#define CPU_EXEC_VSTM1                                                                                                                                                                                               \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                             \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                \
    SET_REG_PARAM(2, bit(insn, 7, 1))                                                                                                                                                                                \
    SET_REG_PARAM(3, bit(insn, 8, 1)) SET_REG_PARAM(4, bit(insn, 9, 1)) SET_REG_PARAM(5, bit(insn, 10, 1)) SET_REG_PARAM(6, bit(insn, 12, 4)) SET_REG_PARAM(7, bit(insn, 16, 4)) SET_REG_PARAM(8, bit(insn, 24, 8)); \
    inst_name("VSTM", 384, 781);
#endif
#ifndef CPU_EXEC_VSUB
#define CPU_EXEC_VSUB                                                                                                                                                                                                  \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 0, 4))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 23, 1)) SET_REG_PARAM(6, bit(insn, 24, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VSUB", 385, 787);
#endif
#ifndef CPU_EXEC_VSUBHN
#define CPU_EXEC_VSUBHN                                                                                                                                                             \
    SET_REG_PARAM(0, 7);                                                                                                                                                            \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                               \
    SET_REG_PARAM(2, bit(insn, 10, 2))                                                                                                                                              \
    SET_REG_PARAM(3, bit(insn, 12, 4)) SET_REG_PARAM(4, bit(insn, 16, 4)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 26, 1)) SET_REG_PARAM(7, bit(insn, 28, 4)); \
    inst_name("VSUBHN", 386, 789);
#endif
#ifndef CPU_EXEC_VSUBL
#define CPU_EXEC_VSUBL                                                                                                                                                                                                                                    \
    SET_REG_PARAM(0, 9);                                                                                                                                                                                                                                  \
    SET_REG_PARAM(1, bit(insn, 7, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(2, bit(insn, 9, 1))                                                                                                                                                                                                                     \
    SET_REG_PARAM(3, bit(insn, 10, 2)) SET_REG_PARAM(4, bit(insn, 12, 4)) SET_REG_PARAM(5, bit(insn, 16, 4)) SET_REG_PARAM(6, bit(insn, 23, 1)) SET_REG_PARAM(7, bit(insn, 24, 1)) SET_REG_PARAM(8, bit(insn, 26, 1)) SET_REG_PARAM(9, bit(insn, 28, 4)); \
    inst_name("VSUBL", 387, 791);
#endif
#ifndef CPU_EXEC_VSWP
#define CPU_EXEC_VSWP                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 25, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VSWP", 388, 793);
#endif
#ifndef CPU_EXEC_VTBL
#define CPU_EXEC_VTBL                                                                                                                                                                                                  \
    SET_REG_PARAM(0, 8);                                                                                                                                                                                               \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                                                                                                  \
    SET_REG_PARAM(2, bit(insn, 12, 4))                                                                                                                                                                                 \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 22, 2)) SET_REG_PARAM(5, bit(insn, 24, 1)) SET_REG_PARAM(6, bit(insn, 25, 1)) SET_REG_PARAM(7, bit(insn, 26, 1)) SET_REG_PARAM(8, bit(insn, 28, 4)); \
    inst_name("VTBL", 389, 795);
#endif
#ifndef CPU_EXEC_VTRN
#define CPU_EXEC_VTRN                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 25, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VTRN", 390, 797);
#endif
#ifndef CPU_EXEC_VUZP
#define CPU_EXEC_VUZP                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 25, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VUZP", 391, 801);
#endif
#ifndef CPU_EXEC_VZIP
#define CPU_EXEC_VZIP                                                                                                                            \
    SET_REG_PARAM(0, 6);                                                                                                                         \
    SET_REG_PARAM(1, bit(insn, 9, 1))                                                                                                            \
    SET_REG_PARAM(2, bit(insn, 12, 2))                                                                                                           \
    SET_REG_PARAM(3, bit(insn, 16, 4)) SET_REG_PARAM(4, bit(insn, 25, 1)) SET_REG_PARAM(5, bit(insn, 26, 1)) SET_REG_PARAM(6, bit(insn, 28, 4)); \
    inst_name("VZIP", 392, 803);
#endif
#ifndef CPU_EXEC_WFE
#define CPU_EXEC_WFE                    \
    SET_REG_PARAM(0, 3);                \
    SET_REG_PARAM(1, bit(insn, 0, 4))   \
    SET_REG_PARAM(2, bit(insn, 16, 4))  \
    SET_REG_PARAM(3, bit(insn, 20, 4)); \
    inst_name("WFE", 393, 805);
#endif
#ifndef CPU_EXEC_WFI
#define CPU_EXEC_WFI                    \
    SET_REG_PARAM(0, 3);                \
    SET_REG_PARAM(1, bit(insn, 0, 4))   \
    SET_REG_PARAM(2, bit(insn, 16, 4))  \
    SET_REG_PARAM(3, bit(insn, 20, 4)); \
    inst_name("WFI", 394, 807);
#endif
#ifndef CPU_EXEC_YIELD
#define CPU_EXEC_YIELD                  \
    SET_REG_PARAM(0, 3);                \
    SET_REG_PARAM(1, bit(insn, 0, 4))   \
    SET_REG_PARAM(2, bit(insn, 16, 4))  \
    SET_REG_PARAM(3, bit(insn, 20, 4)); \
    inst_name("YIELD", 395, 809);
#endif
#include <stdint.h>

#ifndef bit
#define bit(v, offset, len) (((v) >> offset) & ((1 << len) - 1))
#endif

static void inst_exec(uint32_t *reg, uint32_t insn)
{

    switch ((insn & 0x0E000000))
    {

    case 0x00000000:
    {

        switch ((insn & 0x0E000010))
        {

        case 0x00000000:
        {

            switch ((insn & 0x0FA00010))
            {

            case 0x00000000:
            {

                switch ((insn & 0x0FE00010))
                {

                case 0x00000000:
                {

                    CPU_EXEC_AND1 /*index:11 num:0*/
                };
                break;
                case 0x00400000:
                {

                    CPU_EXEC_SUB1 /*index:199 num:1*/
                };
                break;
                }
            };
            break;
            case 0x00200000:
            {

                switch ((insn & 0x0FE00010))
                {

                case 0x00200000:
                {

                    CPU_EXEC_EOR1 /*index:39 num:2*/
                };
                break;
                case 0x00600000:
                {

                    CPU_EXEC_RSB1 /*index:132 num:3*/
                };
                break;
                }
            };
            break;
            case 0x00800000:
            {

                switch ((insn & 0x0FE00010))
                {

                case 0x00800000:
                {

                    if ((insn & 0x0FEF0010) == 0x008D0000)
                    {
                        CPU_EXEC_ADD4 /*index:8 num:4*/
                    }
                    else if ((insn & 0x0FE00010) == 0x00800000)
                    {
                        CPU_EXEC_ADD1 /*index:5 num:5*/
                    }
                };
                break;
                case 0x00C00000:
                {

                    CPU_EXEC_SBC1 /*index:141 num:6*/
                };
                break;
                }
            };
            break;
            case 0x00A00000:
            {

                switch ((insn & 0x0FE00010))
                {

                case 0x00A00000:
                {

                    CPU_EXEC_ADC1 /*index:2 num:7*/
                };
                break;
                case 0x00E00000:
                {

                    CPU_EXEC_RSC1 /*index:135 num:8*/
                };
                break;
                }
            };
            break;
            case 0x01000000:
            {

                switch ((insn & 0x0FB00010))
                {

                case 0x01000000:
                {

                    switch ((insn & 0x0FB00090))
                    {

                    case 0x01000000:
                    {

                        if ((insn & 0xFFF100F0) == 0xF1010000)
                        {
                            CPU_EXEC_SETEND /*index:146 num:9*/
                        }
                        else if ((insn & 0x0FB002F0) == 0x01000000)
                        {
                            CPU_EXEC_MRS /*index:94 num:10*/
                        }
                    };
                    break;
                    case 0x01000080:
                    {

                        switch ((insn & 0x0FF00090))
                        {

                        case 0x01000080:
                        {

                            CPU_EXEC_SMLA /*index:154 num:11*/
                        };
                        break;
                        case 0x01400080:
                        {

                            CPU_EXEC_SMLALBB /*index:157 num:12*/
                        };
                        break;
                        }
                    };
                    break;
                    }
                };
                break;
                case 0x01100000:
                {

                    switch ((insn & 0x0FF00010))
                    {

                    case 0x01100000:
                    {

                        CPU_EXEC_TST1 /*index:213 num:13*/
                    };
                    break;
                    case 0x01500000:
                    {

                        CPU_EXEC_CMP1 /*index:33 num:14*/
                    };
                    break;
                    }
                };
                break;
                }
            };
            break;
            case 0x01200000:
            {

                switch ((insn & 0x0FB00010))
                {

                case 0x01200000:
                {

                    switch ((insn & 0x0FB00090))
                    {

                    case 0x01200000:
                    {

                        switch ((insn & 0x0FB000F0))
                        {

                        case 0x01200000:
                        {

                            CPU_EXEC_MSR1 /*index:96 num:15*/
                        };
                        break;
                        case 0x01200020:
                        {

                            CPU_EXEC_BXJ /*index:26 num:16*/
                        };
                        break;
                        }
                    };
                    break;
                    case 0x01200080:
                    {

                        switch ((insn & 0x0FF00090))
                        {

                        case 0x01200080:
                        {

                            switch ((insn & 0x0FF000B0))
                            {

                            case 0x01200080:
                            {

                                CPU_EXEC_SMLAWB /*index:159 num:17*/
                            };
                            break;
                            case 0x012000A0:
                            {

                                CPU_EXEC_SMULWB /*index:168 num:18*/
                            };
                            break;
                            }
                        };
                        break;
                        case 0x01600080:
                        {

                            CPU_EXEC_SMULBB /*index:166 num:19*/
                        };
                        break;
                        }
                    };
                    break;
                    }
                };
                break;
                case 0x01300000:
                {

                    switch ((insn & 0x0FF00010))
                    {

                    case 0x01300000:
                    {

                        CPU_EXEC_TEQ1 /*index:210 num:20*/
                    };
                    break;
                    case 0x01700000:
                    {

                        CPU_EXEC_CMN1 /*index:30 num:21*/
                    };
                    break;
                    }
                };
                break;
                }
            };
            break;
            case 0x01800000:
            {

                switch ((insn & 0x0FE00010))
                {

                case 0x01800000:
                {

                    CPU_EXEC_ORR1 /*index:103 num:22*/
                };
                break;
                case 0x01C00000:
                {

                    CPU_EXEC_BIC1 /*index:19 num:23*/
                };
                break;
                }
            };
            break;
            case 0x01A00000:
            {

                switch ((insn & 0x0FE00010))
                {

                case 0x01A00000:
                {

                    switch ((insn & 0x0FE00070))
                    {

                    case 0x01A00000:
                    {

                        if ((insn & 0x0FE00FF0) == 0x01A00000)
                        {
                            CPU_EXEC_MOV1 /*index:88 num:24*/
                        }
                        else if ((insn & 0x0FE00070) == 0x01A00000)
                        {
                            CPU_EXEC_LSL /*index:76 num:25*/
                        }
                    };
                    break;
                    case 0x01A00020:
                    {

                        CPU_EXEC_LSR /*index:78 num:26*/
                    };
                    break;
                    case 0x01A00040:
                    {

                        CPU_EXEC_ASR /*index:13 num:27*/
                    };
                    break;
                    case 0x01A00060:
                    {

                        if ((insn & 0x0FE00FF0) == 0x01A00060)
                        {
                            CPU_EXEC_RRX /*index:130 num:28*/
                        }
                        else if ((insn & 0x0FE00070) == 0x01A00060)
                        {
                            CPU_EXEC_ROR /*index:128 num:29*/
                        }
                    };
                    break;
                    }
                };
                break;
                case 0x01E00000:
                {

                    CPU_EXEC_MVN1 /*index:99 num:30*/
                };
                break;
                }
            };
            break;
            }
        };
        break;
        case 0x00000010:
        {

            switch ((insn & 0x0E000090))
            {

            case 0x00000010:
            {

                switch ((insn & 0x0FE00090))
                {

                case 0x00000010:
                {

                    CPU_EXEC_AND2 /*index:12 num:31*/
                };
                break;
                case 0x00200010:
                {

                    CPU_EXEC_EOR2 /*index:40 num:32*/
                };
                break;
                case 0x00400010:
                {

                    CPU_EXEC_SUB2 /*index:200 num:33*/
                };
                break;
                case 0x00600010:
                {

                    CPU_EXEC_RSB2 /*index:133 num:34*/
                };
                break;
                case 0x00800010:
                {

                    CPU_EXEC_ADD2 /*index:6 num:35*/
                };
                break;
                case 0x00A00010:
                {

                    CPU_EXEC_ADC2 /*index:3 num:36*/
                };
                break;
                case 0x00C00010:
                {

                    CPU_EXEC_SBC2 /*index:142 num:37*/
                };
                break;
                case 0x00E00010:
                {

                    CPU_EXEC_RSC2 /*index:136 num:38*/
                };
                break;
                case 0x01000010:
                {

                    switch ((insn & 0x0FF00090))
                    {

                    case 0x01000010:
                    {

                        CPU_EXEC_QADD /*index:114 num:39*/
                    };
                    break;
                    case 0x01100010:
                    {

                        CPU_EXEC_TST2 /*index:214 num:40*/
                    };
                    break;
                    }
                };
                break;
                case 0x01200010:
                {

                    switch ((insn & 0x0FF00090))
                    {

                    case 0x01200010:
                    {

                        switch ((insn & 0x0FF000F0))
                        {

                        case 0x01200010:
                        {

                            CPU_EXEC_BX /*index:25 num:41*/
                        };
                        break;
                        case 0x01200030:
                        {

                            CPU_EXEC_BLX /*index:24 num:42*/
                        };
                        break;
                        case 0x01200050:
                        {

                            CPU_EXEC_QSUB /*index:121 num:43*/
                        };
                        break;
                        case 0x01200070:
                        {

                            CPU_EXEC_BKPT /*index:21 num:44*/
                        };
                        break;
                        }
                    };
                    break;
                    case 0x01300010:
                    {

                        CPU_EXEC_TEQ2 /*index:211 num:45*/
                    };
                    break;
                    }
                };
                break;
                case 0x01400010:
                {

                    switch ((insn & 0x0FF00090))
                    {

                    case 0x01400010:
                    {

                        CPU_EXEC_QDADD /*index:118 num:46*/
                    };
                    break;
                    case 0x01500010:
                    {

                        CPU_EXEC_CMP2 /*index:34 num:47*/
                    };
                    break;
                    }
                };
                break;
                case 0x01600010:
                {

                    switch ((insn & 0x0FF00090))
                    {

                    case 0x01600010:
                    {

                        switch ((insn & 0x0FF000F0))
                        {

                        case 0x01600010:
                        {

                            CPU_EXEC_CLZ /*index:28 num:48*/
                        };
                        break;
                        case 0x01600050:
                        {

                            CPU_EXEC_QDSUB /*index:119 num:49*/
                        };
                        break;
                        }
                    };
                    break;
                    case 0x01700010:
                    {

                        CPU_EXEC_CMN2 /*index:31 num:50*/
                    };
                    break;
                    }
                };
                break;
                case 0x01800010:
                {

                    CPU_EXEC_ORR2 /*index:104 num:51*/
                };
                break;
                case 0x01A00010:
                {

                    switch ((insn & 0x0FE000F0))
                    {

                    case 0x01A00010:
                    {

                        CPU_EXEC_LSL1 /*index:77 num:52*/
                    };
                    break;
                    case 0x01A00030:
                    {

                        CPU_EXEC_LSR1 /*index:79 num:53*/
                    };
                    break;
                    case 0x01A00050:
                    {

                        CPU_EXEC_ASR1 /*index:14 num:54*/
                    };
                    break;
                    case 0x01A00070:
                    {

                        CPU_EXEC_ROR1 /*index:129 num:55*/
                    };
                    break;
                    }
                };
                break;
                case 0x01C00010:
                {

                    CPU_EXEC_BIC2 /*index:20 num:56*/
                };
                break;
                case 0x01E00010:
                {

                    CPU_EXEC_MVN2 /*index:100 num:57*/
                };
                break;
                }
            };
            break;
            case 0x00000090:
            {

                switch ((insn & 0x0E0000F0))
                {

                case 0x00000090:
                {

                    switch ((insn & 0x0FA000F0))
                    {

                    case 0x00000090:
                    {

                        switch ((insn & 0x0FE000F0))
                        {

                        case 0x00000090:
                        {

                            CPU_EXEC_MUL /*index:97 num:58*/
                        };
                        break;
                        case 0x00400090:
                        {

                            CPU_EXEC_UMAAL /*index:227 num:59*/
                        };
                        break;
                        }
                    };
                    break;
                    case 0x00200090:
                    {

                        switch ((insn & 0x0FE000F0))
                        {

                        case 0x00200090:
                        {

                            CPU_EXEC_MLA /*index:84 num:60*/
                        };
                        break;
                        case 0x00600090:
                        {

                            CPU_EXEC_MLS /*index:85 num:61*/
                        };
                        break;
                        }
                    };
                    break;
                    case 0x00800090:
                    {

                        switch ((insn & 0x0FE000F0))
                        {

                        case 0x00800090:
                        {

                            CPU_EXEC_UMULL /*index:229 num:62*/
                        };
                        break;
                        case 0x00C00090:
                        {

                            CPU_EXEC_SMULL /*index:167 num:63*/
                        };
                        break;
                        }
                    };
                    break;
                    case 0x00A00090:
                    {

                        switch ((insn & 0x0FE000F0))
                        {

                        case 0x00A00090:
                        {

                            CPU_EXEC_UMLAL /*index:228 num:64*/
                        };
                        break;
                        case 0x00E00090:
                        {

                            CPU_EXEC_SMLAL /*index:156 num:65*/
                        };
                        break;
                        }
                    };
                    break;
                    case 0x01000090:
                    {

                        CPU_EXEC_SWP /*index:202 num:66*/
                    };
                    break;
                    case 0x01800090:
                    {

                        switch ((insn & 0x0FF000F0))
                        {

                        case 0x01800090:
                        {

                            CPU_EXEC_STREX /*index:188 num:67*/
                        };
                        break;
                        case 0x01900090:
                        {

                            CPU_EXEC_LDREX /*index:58 num:68*/
                        };
                        break;
                        case 0x01C00090:
                        {

                            CPU_EXEC_STREXB /*index:189 num:69*/
                        };
                        break;
                        case 0x01D00090:
                        {

                            CPU_EXEC_LDREXB /*index:59 num:70*/
                        };
                        break;
                        }
                    };
                    break;
                    case 0x01A00090:
                    {

                        switch ((insn & 0x0FF000F0))
                        {

                        case 0x01A00090:
                        {

                            CPU_EXEC_STREXD /*index:190 num:71*/
                        };
                        break;
                        case 0x01B00090:
                        {

                            CPU_EXEC_LDREXD /*index:60 num:72*/
                        };
                        break;
                        case 0x01E00090:
                        {

                            CPU_EXEC_STREXH /*index:191 num:73*/
                        };
                        break;
                        case 0x01F00090:
                        {

                            CPU_EXEC_LDREXH /*index:61 num:74*/
                        };
                        break;
                        }
                    };
                    break;
                    }
                };
                break;
                case 0x000000B0:
                {

                    switch ((insn & 0x0E5000F0))
                    {

                    case 0x000000B0:
                    {

                        if ((insn & 0x0F7000F0) == 0x002000B0)
                        {
                            CPU_EXEC_STRHT1 /*index:195 num:75*/
                        }
                        else if ((insn & 0x0E5000F0) == 0x000000B0)
                        {
                            CPU_EXEC_STRH1 /*index:193 num:76*/
                        }
                    };
                    break;
                    case 0x001000B0:
                    {

                        if ((insn & 0x0F7000F0) == 0x003000B0)
                        {
                            CPU_EXEC_LDRHT1 /*index:65 num:77*/
                        }
                        else if ((insn & 0x0E5000F0) == 0x001000B0)
                        {
                            CPU_EXEC_LDRH1 /*index:63 num:78*/
                        }
                    };
                    break;
                    case 0x004000B0:
                    {

                        if ((insn & 0x0F7000F0) == 0x006000B0)
                        {
                            CPU_EXEC_STRHT /*index:194 num:79*/
                        }
                        else if ((insn & 0x0E5000F0) == 0x004000B0)
                        {
                            CPU_EXEC_STRH /*index:192 num:80*/
                        }
                    };
                    break;
                    case 0x005000B0:
                    {

                        if ((insn & 0x0F7000F0) == 0x007000B0)
                        {
                            CPU_EXEC_LDRHT /*index:64 num:81*/
                        }
                        else if ((insn & 0x0E5000F0) == 0x005000B0)
                        {
                            CPU_EXEC_LDRH /*index:62 num:82*/
                        }
                    };
                    break;
                    }
                };
                break;
                case 0x000000D0:
                {

                    switch ((insn & 0x0E5000F0))
                    {

                    case 0x000000D0:
                    {

                        CPU_EXEC_LDRD1 /*index:57 num:83*/
                    };
                    break;
                    case 0x001000D0:
                    {

                        if ((insn & 0x0F7000F0) == 0x003000D0)
                        {
                            CPU_EXEC_LDRSBT1 /*index:69 num:84*/
                        }
                        else if ((insn & 0x0E5000F0) == 0x001000D0)
                        {
                            CPU_EXEC_LDRSB1 /*index:67 num:85*/
                        }
                    };
                    break;
                    case 0x004000D0:
                    {

                        CPU_EXEC_LDRD /*index:56 num:86*/
                    };
                    break;
                    case 0x005000D0:
                    {

                        if ((insn & 0x0F7000F0) == 0x007000D0)
                        {
                            CPU_EXEC_LDRSBT /*index:68 num:87*/
                        }
                        else if ((insn & 0x0E5000F0) == 0x005000D0)
                        {
                            CPU_EXEC_LDRSB /*index:66 num:88*/
                        }
                    };
                    break;
                    }
                };
                break;
                case 0x000000F0:
                {

                    switch ((insn & 0x0E5000F0))
                    {

                    case 0x000000F0:
                    {

                        CPU_EXEC_STRD1 /*index:187 num:89*/
                    };
                    break;
                    case 0x001000F0:
                    {

                        if ((insn & 0x0F7000F0) == 0x003000F0)
                        {
                            CPU_EXEC_LDRSHT1 /*index:73 num:90*/
                        }
                        else if ((insn & 0x0E5000F0) == 0x001000F0)
                        {
                            CPU_EXEC_LDRSH1 /*index:71 num:91*/
                        }
                    };
                    break;
                    case 0x004000F0:
                    {

                        CPU_EXEC_STRD /*index:186 num:92*/
                    };
                    break;
                    case 0x005000F0:
                    {

                        if ((insn & 0x0F7000F0) == 0x007000F0)
                        {
                            CPU_EXEC_LDRSHT /*index:72 num:93*/
                        }
                        else if ((insn & 0x0E5000F0) == 0x005000F0)
                        {
                            CPU_EXEC_LDRSH /*index:70 num:94*/
                        }
                    };
                    break;
                    }
                };
                break;
                }
            };
            break;
            }
        };
        break;
        }
    };
    break;
    case 0x02000000:
    {

        switch ((insn & 0x0E800000))
        {

        case 0x02000000:
        {

            if ((insn & 0x0FFF00FF) == 0x03200001)
            {
                CPU_EXEC_YIELD /*index:395 num:95*/
            }
            else if ((insn & 0x0FFF00FF) == 0x03200000)
            {
                CPU_EXEC_NOP /*index:101 num:96*/
            }
            else if ((insn & 0x0FFF00FF) == 0x03200004)
            {
                CPU_EXEC_SEV /*index:147 num:97*/
            }
            else if ((insn & 0x0FFF00FF) == 0x03200003)
            {
                CPU_EXEC_WFI /*index:394 num:98*/
            }
            else if ((insn & 0x0FFF00FF) == 0x03200002)
            {
                CPU_EXEC_WFE /*index:393 num:99*/
            }
            else if ((insn & 0xFFB00F10) == 0xF2200110)
            {
                CPU_EXEC_VMOV /*index:309 num:100*/
            }
            else if ((insn & 0xFFB00F10) == 0xF3000110)
            {
                CPU_EXEC_VEOR /*index:290 num:101*/
            }
            else if ((insn & 0xFFB00F10) == 0xF2000410)
            {
                CPU_EXEC_VAND /*index:262 num:102*/
            }
            else if ((insn & 0xFFB00F10) == 0xF2200210)
            {
                CPU_EXEC_VORR /*index:320 num:103*/
            }
            else if ((insn & 0xFFB00F10) == 0xF2300110)
            {
                CPU_EXEC_VORN /*index:329 num:104*/
            }
            else if ((insn & 0x0FFF00F0) == 0x032000F0)
            {
                CPU_EXEC_DBG /*index:35 num:105*/
            }
            else if ((insn & 0xFFB00F10) == 0xF2100110)
            {
                CPU_EXEC_VBIC1 /*index:323 num:106*/
            }
            else if ((insn & 0xFFA00F10) == 0xF2000E00)
            {
                CPU_EXEC_VCEQ1 /*index:265 num:107*/
            }
            else if ((insn & 0xFFA00F10) == 0xF2200F10)
            {
                CPU_EXEC_VRSQRTS /*index:365 num:108*/
            }
            else if ((insn & 0xFFA00F10) == 0xF3200E00)
            {
                CPU_EXEC_VCGT1 /*index:271 num:109*/
            }
            else if ((insn & 0xFFA00F10) == 0xF3000D00)
            {
                CPU_EXEC_VPADD1 /*index:332 num:110*/
            }
            else if ((insn & 0xFFA00F10) == 0xF2000F10)
            {
                CPU_EXEC_VRECPS /*index:358 num:111*/
            }
            else if ((insn & 0xFFA00F10) == 0xF2000D00)
            {
                CPU_EXEC_VADD1 /*index:258 num:112*/
            }
            else if ((insn & 0xFFA00F10) == 0xF3000E00)
            {
                CPU_EXEC_VCGE1 /*index:268 num:113*/
            }
            else if ((insn & 0xFFA00F10) == 0xF3200D00)
            {
                CPU_EXEC_VABD2 /*index:253 num:114*/
            }
            else if ((insn & 0xFF800F10) == 0xF2000800)
            {
                CPU_EXEC_VADD /*index:257 num:115*/
            }
            else if ((insn & 0xFF800F10) == 0xF2000F00)
            {
                CPU_EXEC_VMAX1 /*index:308 num:116*/
            }
            else if ((insn & 0xFF800F10) == 0xF2000B10)
            {
                CPU_EXEC_VPADD /*index:331 num:117*/
            }
            else if ((insn & 0xFF800F10) == 0xF2000C10)
            {
                CPU_EXEC_VFMA /*index:292 num:118*/
            }
            else if ((insn & 0xFF800F10) == 0xF3000E10)
            {
                CPU_EXEC_VACGE /*index:256 num:119*/
            }
            else if ((insn & 0xFF800F10) == 0xF3000B00)
            {
                CPU_EXEC_VQRDMULH /*index:348 num:120*/
            }
            else if ((insn & 0xFF800F10) == 0xF2000B00)
            {
                CPU_EXEC_VQDMULH /*index:342 num:121*/
            }
            else if ((insn & 0xFF800F10) == 0xF3000810)
            {
                CPU_EXEC_VCEQ /*index:264 num:122*/
            }
            else if ((insn & 0xFF800F10) == 0xF3000110)
            {
                CPU_EXEC_VBIF /*index:263 num:123*/
            }
            else if ((insn & 0xFE800F10) == 0xF2000510)
            {
                CPU_EXEC_VQRSHL /*index:350 num:124*/
            }
            else if ((insn & 0xFE800F10) == 0xF2000410)
            {
                CPU_EXEC_VQSHL /*index:352 num:125*/
            }
            else if ((insn & 0xFE800F10) == 0xF2000210)
            {
                CPU_EXEC_VQSUB /*index:355 num:126*/
            }
            else if ((insn & 0xFE800F10) == 0xF2000100)
            {
                CPU_EXEC_VRHADD /*index:360 num:127*/
            }
            else if ((insn & 0xFE800F10) == 0xF2000300)
            {
                CPU_EXEC_VCGT /*index:270 num:128*/
            }
            else if ((insn & 0xFE800F10) == 0xF2000700)
            {
                CPU_EXEC_VABD /*index:251 num:129*/
            }
            else if ((insn & 0xFE800F10) == 0xF2000500)
            {
                CPU_EXEC_VRSHL /*index:361 num:130*/
            }
            else if ((insn & 0xFE800F10) == 0xF2000710)
            {
                CPU_EXEC_VABA /*index:249 num:131*/
            }
            else if ((insn & 0xFE800F10) == 0xF2000400)
            {
                CPU_EXEC_VSHL1 /*index:369 num:132*/
            }
            else if ((insn & 0xFE800F10) == 0xF2000310)
            {
                CPU_EXEC_VCGE /*index:267 num:133*/
            }
            else if ((insn & 0xFE800F10) == 0xF2000010)
            {
                CPU_EXEC_VQADD /*index:339 num:134*/
            }
            else if ((insn & 0x0FFF0000) == 0x024F0000)
            {
                CPU_EXEC_ADR /*index:9 num:135*/
            }
            else if ((insn & 0xFE800D10) == 0xF2000000)
            {
                CPU_EXEC_VHADD /*index:295 num:136*/
            }
            else if ((insn & 0xFE800F00) == 0xF2000600)
            {
                CPU_EXEC_VMAX /*index:307 num:137*/
            }
            else if ((insn & 0x0FF00000) == 0x03000000)
            {
                CPU_EXEC_MOVW /*index:87 num:138*/
            }
            else if ((insn & 0x0FF00000) == 0x03700000)
            {
                CPU_EXEC_CMN /*index:29 num:139*/
            }
            else if ((insn & 0x0FF00000) == 0x03100000)
            {
                CPU_EXEC_TST /*index:212 num:140*/
            }
            else if ((insn & 0x0FF00000) == 0x03300000)
            {
                CPU_EXEC_TEQ /*index:209 num:141*/
            }
            else if ((insn & 0x0FF00000) == 0x03400000)
            {
                CPU_EXEC_MOVT /*index:89 num:142*/
            }
            else if ((insn & 0x0FF00000) == 0x03500000)
            {
                CPU_EXEC_CMP /*index:32 num:143*/
            }
            else if ((insn & 0x0FE00000) == 0x02000000)
            {
                CPU_EXEC_AND /*index:10 num:144*/
            }
            else if ((insn & 0x0FE00000) == 0x02200000)
            {
                CPU_EXEC_EOR /*index:38 num:145*/
            }
            else if ((insn & 0x0FB00000) == 0x03200000)
            {
                CPU_EXEC_MSR /*index:95 num:146*/
            }
            else if ((insn & 0x0FE00000) == 0x02600000)
            {
                CPU_EXEC_RSB /*index:131 num:147*/
            }
            else if ((insn & 0x0FE00000) == 0x02400000)
            {
                CPU_EXEC_SUB /*index:198 num:148*/
            }
        };
        break;
        case 0x02800000:
        {

            if ((insn & 0xFFB30FD0) == 0xF3B20200)
            {
                CPU_EXEC_VMOVN /*index:317 num:149*/
            }
            else if ((insn & 0xFFB30FD0) == 0xF3B20300)
            {
                CPU_EXEC_VSHLL1 /*index:371 num:150*/
            }
            else if ((insn & 0xFFB30F90) == 0xF3B20180)
            {
                CPU_EXEC_VZIP /*index:392 num:151*/
            }
            else if ((insn & 0xFFB30F90) == 0xF3B00580)
            {
                CPU_EXEC_VMVN /*index:324 num:152*/
            }
            else if ((insn & 0xFFB30F90) == 0xF3B00400)
            {
                CPU_EXEC_VCLS /*index:274 num:153*/
            }
            else if ((insn & 0xFFB30ED0) == 0xF3B20600)
            {
                CPU_EXEC_VCVT5 /*index:285 num:154*/
            }
            else if ((insn & 0xFFB30F90) == 0xF3B00480)
            {
                CPU_EXEC_VCLZ /*index:276 num:155*/
            }
            else if ((insn & 0xFFB30F90) == 0xF3B00500)
            {
                CPU_EXEC_VCNT /*index:279 num:156*/
            }
            else if ((insn & 0xFFB30F90) == 0xF3B00700)
            {
                CPU_EXEC_VQABS /*index:338 num:157*/
            }
            else if ((insn & 0xFFB30F90) == 0xF3B20100)
            {
                CPU_EXEC_VUZP /*index:391 num:158*/
            }
            else if ((insn & 0xFFB30F90) == 0xF3B00780)
            {
                CPU_EXEC_VQNEG /*index:347 num:159*/
            }
            else if ((insn & 0xFFB30F90) == 0xF3B20080)
            {
                CPU_EXEC_VTRN /*index:390 num:160*/
            }
            else if ((insn & 0xFFB30F90) == 0xF3B20000)
            {
                CPU_EXEC_VSWP /*index:388 num:161*/
            }
            else if ((insn & 0xFFB30F10) == 0xF3B00C00)
            {
                CPU_EXEC_VPADAL /*index:330 num:162*/
            }
            else if ((insn & 0xFFB30E90) == 0xF3B30480)
            {
                CPU_EXEC_VRSQRTE /*index:364 num:163*/
            }
            else if ((insn & 0xFE870FD0) == 0xF2800610)
            {
                CPU_EXEC_VMOVL /*index:316 num:164*/
            }
            else if ((insn & 0xFFB30E90) == 0xF3B30400)
            {
                CPU_EXEC_VRECPE /*index:357 num:165*/
            }
            else if ((insn & 0xFFB30F10) == 0xF3B20200)
            {
                CPU_EXEC_VQMOVN /*index:346 num:166*/
            }
            else if ((insn & 0xFFB30B90) == 0xF3B10380)
            {
                CPU_EXEC_VNEG /*index:325 num:167*/
            }
            else if ((insn & 0xFFB30B90) == 0xF3B10200)
            {
                CPU_EXEC_VCLT /*index:275 num:168*/
            }
            else if ((insn & 0xFFB30F10) == 0xF3B00200)
            {
                CPU_EXEC_VPADDL /*index:333 num:169*/
            }
            else if ((insn & 0xFFB30B90) == 0xF3B10000)
            {
                CPU_EXEC_VCGT2 /*index:272 num:170*/
            }
            else if ((insn & 0xFFB30B90) == 0xF3B10180)
            {
                CPU_EXEC_VCLE /*index:273 num:171*/
            }
            else if ((insn & 0xFFB30B90) == 0xF3B10100)
            {
                CPU_EXEC_VCEQ2 /*index:266 num:172*/
            }
            else if ((insn & 0xFFB30B90) == 0xF3B10080)
            {
                CPU_EXEC_VCGE2 /*index:269 num:173*/
            }
            else if ((insn & 0xFFB30B90) == 0xF3B10300)
            {
                CPU_EXEC_VABS /*index:254 num:174*/
            }
            else if ((insn & 0xFFB00F90) == 0xF3B00C00)
            {
                CPU_EXEC_VDUP /*index:288 num:175*/
            }
            else if ((insn & 0xFFB30E10) == 0xF3B30600)
            {
                CPU_EXEC_VCVT /*index:280 num:176*/
            }
            else if ((insn & 0xFFB30E10) == 0xF3B00000)
            {
                CPU_EXEC_VREV16 /*index:359 num:177*/
            }
            else if ((insn & 0xFF800FD0) == 0xF2800850)
            {
                CPU_EXEC_VRSHRN /*index:363 num:178*/
            }
            else if ((insn & 0xFF800FD0) == 0xF2800810)
            {
                CPU_EXEC_VSHRN /*index:373 num:179*/
            }
            else if ((insn & 0xFF800F50) == 0xF2800600)
            {
                CPU_EXEC_VSUBHN /*index:386 num:180*/
            }
            else if ((insn & 0xFF800F50) == 0xF2800B40)
            {
                CPU_EXEC_VQDMULL1 /*index:345 num:181*/
            }
            else if ((insn & 0xFE800FD0) == 0xF2800A10)
            {
                CPU_EXEC_VSHLL /*index:370 num:182*/
            }
            else if ((insn & 0xFF800F50) == 0xF3800600)
            {
                CPU_EXEC_VRSUBHN /*index:367 num:183*/
            }
            else if ((insn & 0xFF800F50) == 0xF3800400)
            {
                CPU_EXEC_VRADDHN /*index:356 num:184*/
            }
            else if ((insn & 0xFF800F50) == 0xF2800D00)
            {
                CPU_EXEC_VQDMULL /*index:344 num:185*/
            }
            else if ((insn & 0xFF800F50) == 0xF2800200)
            {
                CPU_EXEC_VADDHN /*index:260 num:186*/
            }
            else if ((insn & 0xFEB800B0) == 0xF2800010)
            {
                CPU_EXEC_VORR1 /*index:321 num:187*/
            }
            else if ((insn & 0xFF800D50) == 0xF2800900)
            {
                CPU_EXEC_VQDMLAL /*index:340 num:188*/
            }
            else if ((insn & 0xFE800ED0) == 0xF2800810)
            {
                CPU_EXEC_VQSHRN /*index:354 num:189*/
            }
            else if ((insn & 0xFF800F10) == 0xF3800510)
            {
                CPU_EXEC_VSLI /*index:374 num:190*/
            }
            else if ((insn & 0xFF800F10) == 0xF2800510)
            {
                CPU_EXEC_VSHL /*index:368 num:191*/
            }
            else if ((insn & 0xFFB00C10) == 0xF3B00800)
            {
                CPU_EXEC_VTBL /*index:389 num:192*/
            }
            else if ((insn & 0xFF800B50) == 0xF2800340)
            {
                CPU_EXEC_VQDMLAL1 /*index:341 num:193*/
            }
            else if ((insn & 0xFEB800B0) == 0xF2800030)
            {
                CPU_EXEC_VBIC /*index:322 num:194*/
            }
            else if ((insn & 0xFE800F50) == 0xF2800D40)
            {
                CPU_EXEC_VQRDMULH1 /*index:349 num:195*/
            }
            else if ((insn & 0xFE800ED0) == 0xF2800850)
            {
                CPU_EXEC_VQRSHRN /*index:351 num:196*/
            }
            else if ((insn & 0xFE800F50) == 0xF2800C40)
            {
                CPU_EXEC_VQDMULH1 /*index:343 num:197*/
            }
            else if ((insn & 0xFE800F50) == 0xF2800700)
            {
                CPU_EXEC_VABD1 /*index:252 num:198*/
            }
            else if ((insn & 0xFE800F50) == 0xF2800500)
            {
                CPU_EXEC_VABA1 /*index:250 num:199*/
            }
            else if ((insn & 0xFF800F10) == 0xF3800410)
            {
                CPU_EXEC_VSRI /*index:377 num:200*/
            }
            else if ((insn & 0xFE800E50) == 0xF2800000)
            {
                CPU_EXEC_VADDL /*index:261 num:201*/
            }
            else if ((insn & 0xFE800E90) == 0xF2800E10)
            {
                CPU_EXEC_VCVT2 /*index:282 num:202*/
            }
            else if ((insn & 0xFE800F10) == 0xF2800210)
            {
                CPU_EXEC_VRSHR /*index:362 num:203*/
            }
            else if ((insn & 0xFE800E50) == 0xF2800200)
            {
                CPU_EXEC_VSUBL /*index:387 num:204*/
            }
            else if ((insn & 0xFE800F10) == 0xF2800110)
            {
                CPU_EXEC_VSRA /*index:376 num:205*/
            }
            else if ((insn & 0xFE800F10) == 0xF2800310)
            {
                CPU_EXEC_VRSRA /*index:366 num:206*/
            }
            else if ((insn & 0xFE800F10) == 0xF2800010)
            {
                CPU_EXEC_VSHR /*index:372 num:207*/
            }
            else if ((insn & 0xFE800E10) == 0xF2800610)
            {
                CPU_EXEC_VQSHL1 /*index:353 num:208*/
            }
            else if ((insn & 0xFFB00010) == 0xF2B00000)
            {
                CPU_EXEC_VEXT /*index:291 num:209*/
            }
            else if ((insn & 0x0FEF0000) == 0x028D0000)
            {
                CPU_EXEC_ADD3 /*index:7 num:210*/
            }
            else if ((insn & 0x0FE00000) == 0x03A00000)
            {
                CPU_EXEC_MOV /*index:86 num:211*/
            }
            else if ((insn & 0x0FE00000) == 0x02800000)
            {
                CPU_EXEC_ADD /*index:4 num:212*/
            }
            else if ((insn & 0x0FE00000) == 0x03C00000)
            {
                CPU_EXEC_BIC /*index:18 num:213*/
            }
            else if ((insn & 0x0FE00000) == 0x02C00000)
            {
                CPU_EXEC_SBC /*index:140 num:214*/
            }
            else if ((insn & 0x0FE00000) == 0x03800000)
            {
                CPU_EXEC_ORR /*index:102 num:215*/
            }
            else if ((insn & 0x0FE00000) == 0x02E00000)
            {
                CPU_EXEC_RSC /*index:134 num:216*/
            }
            else if ((insn & 0x0FE00000) == 0x03E00000)
            {
                CPU_EXEC_MVN /*index:98 num:217*/
            }
            else if ((insn & 0x0FE00000) == 0x02A00000)
            {
                CPU_EXEC_ADC /*index:1 num:218*/
            }
        };
        break;
        }
    };
    break;
    case 0x04000000:
    {

        switch ((insn & 0x0E100000))
        {

        case 0x04000000:
        {

            if ((insn & 0x0FFF0FFF) == 0x052D0004)
            {
                CPU_EXEC_PUSH1 /*index:113 num:219*/
            }
            else if ((insn & 0xFFB00F00) == 0xF4A00E00)
            {
                CPU_EXEC_VLD31 /*index:302 num:220*/
            }
            else if ((insn & 0xFFB00F00) == 0xF4A00F00)
            {
                CPU_EXEC_VLD41 /*index:304 num:221*/
            }
            else if ((insn & 0xFFB00F00) == 0xF4A00C00)
            {
                CPU_EXEC_VLD12 /*index:298 num:222*/
            }
            else if ((insn & 0xFFB00F00) == 0xF4A00D00)
            {
                CPU_EXEC_VLD21 /*index:300 num:223*/
            }
            else if ((insn & 0xFFB00300) == 0xF4800300)
            {
                CPU_EXEC_VST4 /*index:382 num:224*/
            }
            else if ((insn & 0xFFB00300) == 0xF4A00200)
            {
                CPU_EXEC_VLD3 /*index:301 num:225*/
            }
            else if ((insn & 0xFFB00300) == 0xF4800000)
            {
                CPU_EXEC_VST11 /*index:379 num:226*/
            }
            else if ((insn & 0xFFB00300) == 0xF4A00300)
            {
                CPU_EXEC_VLD4 /*index:303 num:227*/
            }
            else if ((insn & 0xFFB00300) == 0xF4800200)
            {
                CPU_EXEC_VST3 /*index:381 num:228*/
            }
            else if ((insn & 0xFFB00300) == 0xF4800100)
            {
                CPU_EXEC_VST2 /*index:380 num:229*/
            }
            else if ((insn & 0xFFB00300) == 0xF4A00100)
            {
                CPU_EXEC_VLD2 /*index:299 num:230*/
            }
            else if ((insn & 0xFFB00300) == 0xF4A00000)
            {
                CPU_EXEC_VLD11 /*index:297 num:231*/
            }
            else if ((insn & 0xFFB00000) == 0xF4000000)
            {
                CPU_EXEC_VST1 /*index:378 num:232*/
            }
            else if ((insn & 0xFFB00000) == 0xF4200000)
            {
                CPU_EXEC_VLD1 /*index:296 num:233*/
            }
            else if ((insn & 0x0F700000) == 0x04200000)
            {
                CPU_EXEC_STRT /*index:196 num:234*/
            }
            else if ((insn & 0x0F700000) == 0x04600000)
            {
                CPU_EXEC_STRBT /*index:184 num:235*/
            }
            else if ((insn & 0x0E500000) == 0x04000000)
            {
                CPU_EXEC_STR /*index:180 num:236*/
            }
            else if ((insn & 0x0E500000) == 0x04400000)
            {
                CPU_EXEC_STRB /*index:182 num:237*/
            }
        };
        break;
        case 0x04100000:
        {

            if ((insn & 0xFFF000F0) == 0xF5700010)
            {
                CPU_EXEC_CLREX /*index:27 num:238*/
            }
            else if ((insn & 0xFFF000F0) == 0xF5700060)
            {
                CPU_EXEC_ISB /*index:41 num:239*/
            }
            else if ((insn & 0xFFF000F0) == 0xF5700040)
            {
                CPU_EXEC_DSB /*index:37 num:240*/
            }
            else if ((insn & 0xFFF000F0) == 0xF5700050)
            {
                CPU_EXEC_DMB /*index:36 num:241*/
            }
            else if ((insn & 0xFF3F0000) == 0xF51F0000)
            {
                CPU_EXEC_PLD1 /*index:107 num:242*/
            }
            else if ((insn & 0xFF700000) == 0xF4500000)
            {
                CPU_EXEC_PLI /*index:109 num:243*/
            }
            else if ((insn & 0xFF300000) == 0xF5100000)
            {
                CPU_EXEC_PLD /*index:106 num:244*/
            }
            else if ((insn & 0x0F700000) == 0x04300000)
            {
                CPU_EXEC_LDRT /*index:74 num:245*/
            }
            else if ((insn & 0x0F700000) == 0x04700000)
            {
                CPU_EXEC_LDRBT /*index:54 num:246*/
            }
            else if ((insn & 0x0E500000) == 0x04100000)
            {
                CPU_EXEC_LDR /*index:50 num:247*/
            }
            else if ((insn & 0x0E500000) == 0x04500000)
            {
                CPU_EXEC_LDRB /*index:52 num:248*/
            }
        };
        break;
        }
    };
    break;
    case 0x06000000:
    {

        switch ((insn & 0x0E000010))
        {

        case 0x06000000:
        {

            switch ((insn & 0x0E100010))
            {

            case 0x06000000:
            {

                switch ((insn & 0x0E500010))
                {

                case 0x06000000:
                {

                    if ((insn & 0x0F700010) == 0x06200000)
                    {
                        CPU_EXEC_STRT1 /*index:197 num:249*/
                    }
                    else if ((insn & 0x0E500010) == 0x06000000)
                    {
                        CPU_EXEC_STR1 /*index:181 num:250*/
                    }
                };
                break;
                case 0x06400000:
                {

                    if ((insn & 0x0F700010) == 0x06600000)
                    {
                        CPU_EXEC_STRBT1 /*index:185 num:251*/
                    }
                    else if ((insn & 0x0E500010) == 0x06400000)
                    {
                        CPU_EXEC_STRB1 /*index:183 num:252*/
                    }
                };
                break;
                }
            };
            break;
            case 0x06100000:
            {

                if ((insn & 0xFF700010) == 0xF6500000)
                {
                    CPU_EXEC_PLI1 /*index:110 num:253*/
                }
                else if ((insn & 0xFF300010) == 0xF7100000)
                {
                    CPU_EXEC_PLD2 /*index:108 num:254*/
                }
                else if ((insn & 0x0F700010) == 0x06300000)
                {
                    CPU_EXEC_LDRT1 /*index:75 num:255*/
                }
                else if ((insn & 0x0F700010) == 0x06700000)
                {
                    CPU_EXEC_LDRBT1 /*index:55 num:256*/
                }
                else if ((insn & 0x0E500010) == 0x06500000)
                {
                    CPU_EXEC_LDRB1 /*index:53 num:257*/
                }
                else if ((insn & 0x0E500010) == 0x06100000)
                {
                    CPU_EXEC_LDR1 /*index:51 num:258*/
                }
            };
            break;
            }
        };
        break;
        case 0x06000010:
        {

            switch ((insn & 0x0FE00010))
            {

            case 0x06000010:
            {

                switch ((insn & 0x0FF000F0))
                {

                case 0x06100010:
                {

                    CPU_EXEC_SADD16 /*index:137 num:259*/
                };
                break;
                case 0x06100030:
                {

                    CPU_EXEC_SASX /*index:139 num:260*/
                };
                break;
                case 0x06100050:
                {

                    CPU_EXEC_SSAX /*index:172 num:261*/
                };
                break;
                case 0x06100070:
                {

                    CPU_EXEC_SSUB16 /*index:173 num:262*/
                };
                break;
                case 0x06100090:
                {

                    CPU_EXEC_SADD8 /*index:138 num:263*/
                };
                break;
                case 0x061000F0:
                {

                    CPU_EXEC_SSUB8 /*index:174 num:264*/
                };
                break;
                }
            };
            break;
            case 0x06200010:
            {

                switch ((insn & 0x0FF000F0))
                {

                case 0x06200010:
                {

                    CPU_EXEC_QADD16 /*index:115 num:265*/
                };
                break;
                case 0x06200030:
                {

                    CPU_EXEC_QASX /*index:117 num:266*/
                };
                break;
                case 0x06200050:
                {

                    CPU_EXEC_QSAX /*index:120 num:267*/
                };
                break;
                case 0x06200070:
                {

                    CPU_EXEC_QSUB16 /*index:122 num:268*/
                };
                break;
                case 0x06200090:
                {

                    CPU_EXEC_QADD8 /*index:116 num:269*/
                };
                break;
                case 0x062000F0:
                {

                    CPU_EXEC_QSUB8 /*index:123 num:270*/
                };
                break;
                case 0x06300010:
                {

                    CPU_EXEC_SHADD16 /*index:148 num:271*/
                };
                break;
                case 0x06300030:
                {

                    CPU_EXEC_SHASX /*index:150 num:272*/
                };
                break;
                case 0x06300050:
                {

                    CPU_EXEC_SHSAX /*index:151 num:273*/
                };
                break;
                case 0x06300070:
                {

                    CPU_EXEC_SHSUB16 /*index:152 num:274*/
                };
                break;
                case 0x06300090:
                {

                    CPU_EXEC_SHADD8 /*index:149 num:275*/
                };
                break;
                case 0x063000F0:
                {

                    CPU_EXEC_SHSUB8 /*index:153 num:276*/
                };
                break;
                }
            };
            break;
            case 0x06400010:
            {

                switch ((insn & 0x0FF000F0))
                {

                case 0x06500010:
                {

                    CPU_EXEC_UADD16 /*index:215 num:277*/
                };
                break;
                case 0x06500030:
                {

                    CPU_EXEC_UASX /*index:217 num:278*/
                };
                break;
                case 0x06500050:
                {

                    CPU_EXEC_USAX /*index:240 num:279*/
                };
                break;
                case 0x06500070:
                {

                    CPU_EXEC_USUB16 /*index:241 num:280*/
                };
                break;
                case 0x06500090:
                {

                    CPU_EXEC_UADD8 /*index:216 num:281*/
                };
                break;
                case 0x065000F0:
                {

                    CPU_EXEC_USUB8 /*index:242 num:282*/
                };
                break;
                }
            };
            break;
            case 0x06600010:
            {

                switch ((insn & 0x0FF000F0))
                {

                case 0x06600010:
                {

                    CPU_EXEC_UQADD16 /*index:230 num:283*/
                };
                break;
                case 0x06600030:
                {

                    CPU_EXEC_UQASX /*index:232 num:284*/
                };
                break;
                case 0x06600050:
                {

                    CPU_EXEC_UQSAX /*index:233 num:285*/
                };
                break;
                case 0x06600070:
                {

                    CPU_EXEC_UQSUB16 /*index:234 num:286*/
                };
                break;
                case 0x06600090:
                {

                    CPU_EXEC_UQADD8 /*index:231 num:287*/
                };
                break;
                case 0x066000F0:
                {

                    CPU_EXEC_UQSUB8 /*index:235 num:288*/
                };
                break;
                case 0x06700010:
                {

                    CPU_EXEC_UHADD16 /*index:221 num:289*/
                };
                break;
                case 0x06700030:
                {

                    CPU_EXEC_UHASX /*index:223 num:290*/
                };
                break;
                case 0x06700050:
                {

                    CPU_EXEC_UHSAX /*index:224 num:291*/
                };
                break;
                case 0x06700070:
                {

                    CPU_EXEC_UHSUB16 /*index:225 num:292*/
                };
                break;
                case 0x06700090:
                {

                    CPU_EXEC_UHADD8 /*index:222 num:293*/
                };
                break;
                case 0x067000F0:
                {

                    CPU_EXEC_UHSUB8 /*index:226 num:294*/
                };
                break;
                }
            };
            break;
            case 0x06800010:
            {

                switch ((insn & 0x0FF00030))
                {

                case 0x06800010:
                {

                    CPU_EXEC_PKH /*index:105 num:295*/
                };
                break;
                case 0x06800030:
                {

                    switch ((insn & 0x0FF000F0))
                    {

                    case 0x06800070:
                    {

                        if ((insn & 0x0FFF00F0) == 0x068F0070)
                        {
                            CPU_EXEC_SXTB16 /*index:207 num:296*/
                        }
                        else if ((insn & 0x0FF000F0) == 0x06800070)
                        {
                            CPU_EXEC_SXTAB16 /*index:204 num:297*/
                        }
                    };
                    break;
                    case 0x068000B0:
                    {

                        CPU_EXEC_SEL /*index:145 num:298*/
                    };
                    break;
                    }
                };
                break;
                }
            };
            break;
            case 0x06A00010:
            {

                switch ((insn & 0x0FE00030))
                {

                case 0x06A00010:
                {

                    CPU_EXEC_SSAT /*index:170 num:299*/
                };
                break;
                case 0x06A00030:
                {

                    switch ((insn & 0x0FF000F0))
                    {

                    case 0x06A00030:
                    {

                        CPU_EXEC_SSAT16 /*index:171 num:300*/
                    };
                    break;
                    case 0x06A00070:
                    {

                        if ((insn & 0x0FFF00F0) == 0x06AF0070)
                        {
                            CPU_EXEC_SXTB /*index:206 num:301*/
                        }
                        else if ((insn & 0x0FF000F0) == 0x06A00070)
                        {
                            CPU_EXEC_SXTAB /*index:203 num:302*/
                        }
                    };
                    break;
                    case 0x06B00030:
                    {

                        CPU_EXEC_REV /*index:125 num:303*/
                    };
                    break;
                    case 0x06B00070:
                    {

                        if ((insn & 0x0FFF00F0) == 0x06BF0070)
                        {
                            CPU_EXEC_SXTH /*index:208 num:304*/
                        }
                        else if ((insn & 0x0FF000F0) == 0x06B00070)
                        {
                            CPU_EXEC_SXTAH /*index:205 num:305*/
                        }
                    };
                    break;
                    case 0x06B000B0:
                    {

                        CPU_EXEC_REV16 /*index:126 num:306*/
                    };
                    break;
                    }
                };
                break;
                }
            };
            break;
            case 0x06C00010:
            {

                if ((insn & 0x0FFF00F0) == 0x06CF0070)
                {
                    CPU_EXEC_UXTB16 /*index:247 num:307*/
                }
                else if ((insn & 0x0FF000F0) == 0x06C00070)
                {
                    CPU_EXEC_UXTAB16 /*index:244 num:308*/
                }
            };
            break;
            case 0x06E00010:
            {

                switch ((insn & 0x0FE00030))
                {

                case 0x06E00010:
                {

                    CPU_EXEC_USAT /*index:238 num:309*/
                };
                break;
                case 0x06E00030:
                {

                    switch ((insn & 0x0FF000F0))
                    {

                    case 0x06E00030:
                    {

                        CPU_EXEC_USAT16 /*index:239 num:310*/
                    };
                    break;
                    case 0x06E00070:
                    {

                        if ((insn & 0x0FFF00F0) == 0x06EF0070)
                        {
                            CPU_EXEC_UXTB /*index:246 num:311*/
                        }
                        else if ((insn & 0x0FF000F0) == 0x06E00070)
                        {
                            CPU_EXEC_UXTAB /*index:243 num:312*/
                        }
                    };
                    break;
                    case 0x06F00030:
                    {

                        CPU_EXEC_RBIT /*index:124 num:313*/
                    };
                    break;
                    case 0x06F00070:
                    {

                        if ((insn & 0x0FFF00F0) == 0x06FF0070)
                        {
                            CPU_EXEC_UXTH /*index:248 num:314*/
                        }
                        else if ((insn & 0x0FF000F0) == 0x06F00070)
                        {
                            CPU_EXEC_UXTAH /*index:245 num:315*/
                        }
                    };
                    break;
                    case 0x06F000B0:
                    {

                        CPU_EXEC_REVSH /*index:127 num:316*/
                    };
                    break;
                    }
                };
                break;
                }
            };
            break;
            case 0x07000010:
            {

                switch ((insn & 0x0FF000D0))
                {

                case 0x07000010:
                {

                    if ((insn & 0x0FF0F0D0) == 0x0700F010)
                    {
                        CPU_EXEC_SMUAD /*index:165 num:317*/
                    }
                    else if ((insn & 0x0FF000D0) == 0x07000010)
                    {
                        CPU_EXEC_SMLAD /*index:155 num:318*/
                    }
                };
                break;
                case 0x07000050:
                {

                    if ((insn & 0x0FF0F0D0) == 0x0700F050)
                    {
                        CPU_EXEC_SMUSD /*index:169 num:319*/
                    }
                    else if ((insn & 0x0FF000D0) == 0x07000050)
                    {
                        CPU_EXEC_SMLSD /*index:160 num:320*/
                    }
                };
                break;
                case 0x07100010:
                {

                    CPU_EXEC_SDIV /*index:144 num:321*/
                };
                break;
                }
            };
            break;
            case 0x07200010:
            {

                CPU_EXEC_UDIV /*index:220 num:322*/
            };
            break;
            case 0x07400010:
            {

                switch ((insn & 0x0FF000D0))
                {

                case 0x07400010:
                {

                    CPU_EXEC_SMLALD /*index:158 num:323*/
                };
                break;
                case 0x07400050:
                {

                    CPU_EXEC_SMLSLD /*index:161 num:324*/
                };
                break;
                case 0x07500010:
                {

                    if ((insn & 0x0FF0F0D0) == 0x0750F010)
                    {
                        CPU_EXEC_SMMUL /*index:164 num:325*/
                    }
                    else if ((insn & 0x0FF000D0) == 0x07500010)
                    {
                        CPU_EXEC_SMMLA /*index:162 num:326*/
                    }
                };
                break;
                case 0x075000D0:
                {

                    CPU_EXEC_SMMLS /*index:163 num:327*/
                };
                break;
                }
            };
            break;
            case 0x07800010:
            {

                if ((insn & 0x0FF0F0F0) == 0x0780F010)
                {
                    CPU_EXEC_USAD8 /*index:236 num:328*/
                }
                else if ((insn & 0x0FF000F0) == 0x07800010)
                {
                    CPU_EXEC_USADA8 /*index:237 num:329*/
                }
            };
            break;
            case 0x07A00010:
            {

                CPU_EXEC_SBFX /*index:143 num:330*/
            };
            break;
            case 0x07C00010:
            {

                if ((insn & 0x0FE0007F) == 0x07C0001F)
                {
                    CPU_EXEC_BFC /*index:16 num:331*/
                }
                else if ((insn & 0x0FE00070) == 0x07C00010)
                {
                    CPU_EXEC_BFI /*index:17 num:332*/
                }
            };
            break;
            case 0x07E00010:
            {

                switch ((insn & 0x0FE00070))
                {

                case 0x07E00050:
                {

                    CPU_EXEC_UBFX /*index:218 num:333*/
                };
                break;
                case 0x07E00070:
                {

                    CPU_EXEC_UDF /*index:219 num:334*/
                };
                break;
                }
            };
            break;
            }
        };
        break;
        }
    };
    break;
    case 0x08000000:
    {

        switch ((insn & 0x0FD00000))
        {

        case 0x08000000:
        {

            CPU_EXEC_STMDA /*index:177 num:335*/
        };
        break;
        case 0x08100000:
        {

            CPU_EXEC_LDMDA /*index:47 num:336*/
        };
        break;
        case 0x08800000:
        {

            CPU_EXEC_STM /*index:176 num:337*/
        };
        break;
        case 0x08900000:
        {

            if ((insn & 0x0FFF0000) == 0x08BD0000)
            {
                CPU_EXEC_POP /*index:111 num:338*/
            }
            else if ((insn & 0x0FD00000) == 0x08900000)
            {
                CPU_EXEC_LDM /*index:46 num:339*/
            }
        };
        break;
        case 0x09000000:
        {

            if ((insn & 0x0FFF0000) == 0x092D0000)
            {
                CPU_EXEC_PUSH /*index:112 num:340*/
            }
            else if ((insn & 0x0FD00000) == 0x09000000)
            {
                CPU_EXEC_STMDB /*index:178 num:341*/
            }
        };
        break;
        case 0x09100000:
        {

            CPU_EXEC_LDMDB /*index:48 num:342*/
        };
        break;
        case 0x09800000:
        {

            CPU_EXEC_STMIB /*index:179 num:343*/
        };
        break;
        case 0x09900000:
        {

            CPU_EXEC_LDMIB /*index:49 num:344*/
        };
        break;
        }
    };
    break;
    case 0x0A000000:
    {

        if ((insn & 0xFE000000) == 0xFA000000)
        {
            CPU_EXEC_BL1 /*index:23 num:345*/
        }
        else if ((insn & 0x0F000000) == 0x0B000000)
        {
            CPU_EXEC_BL /*index:22 num:346*/
        }
        else if ((insn & 0x0F000000) == 0x0A000000)
        {
            CPU_EXEC_B /*index:15 num:347*/
        }
    };
    break;
    case 0x0C000000:
    {

        if ((insn & 0x0FBF0F00) == 0x0CBD0A00)
        {
            CPU_EXEC_VPOP1 /*index:335 num:348*/
        }
        else if ((insn & 0x0FBF0F00) == 0x0CBD0B00)
        {
            CPU_EXEC_VPOP /*index:334 num:349*/
        }
        else if ((insn & 0x0FBF0F00) == 0x0D2D0B00)
        {
            CPU_EXEC_VPUSH /*index:336 num:350*/
        }
        else if ((insn & 0x0FBF0F00) == 0x0D2D0A00)
        {
            CPU_EXEC_VPUSH1 /*index:337 num:351*/
        }
        else if ((insn & 0x0FE00FD0) == 0x0C400A10)
        {
            CPU_EXEC_VMOV5 /*index:314 num:352*/
        }
        else if ((insn & 0x0FE00FD0) == 0x0C400B10)
        {
            CPU_EXEC_VMOV6 /*index:315 num:353*/
        }
        else if ((insn & 0xFE1F0000) == 0xFC1F0000)
        {
            CPU_EXEC_LDC3 /*index:45 num:354*/
        }
        else if ((insn & 0xFFF00000) == 0xFC500000)
        {
            CPU_EXEC_MRRC1 /*index:93 num:355*/
        }
        else if ((insn & 0xFFF00000) == 0xFC400000)
        {
            CPU_EXEC_MCRR1 /*index:83 num:356*/
        }
        else if ((insn & 0x0E100F00) == 0x0C000A00)
        {
            CPU_EXEC_VSTM1 /*index:384 num:357*/
        }
        else if ((insn & 0x0E100F00) == 0x0C100A00)
        {
            CPU_EXEC_VLDM1 /*index:306 num:358*/
        }
        else if ((insn & 0x0E100F00) == 0x0C100B00)
        {
            CPU_EXEC_VLDM /*index:305 num:359*/
        }
        else if ((insn & 0x0E1F0000) == 0x0C1F0000)
        {
            CPU_EXEC_LDC2 /*index:44 num:360*/
        }
        else if ((insn & 0x0E100F00) == 0x0C000B00)
        {
            CPU_EXEC_VSTM /*index:383 num:361*/
        }
        else if ((insn & 0x0FF00000) == 0x0C400000)
        {
            CPU_EXEC_MCRR /*index:82 num:362*/
        }
        else if ((insn & 0x0FF00000) == 0x0C500000)
        {
            CPU_EXEC_MRRC /*index:92 num:363*/
        }
        else if ((insn & 0xFE100000) == 0xFC100000)
        {
            CPU_EXEC_LDC1 /*index:43 num:364*/
        }
        else if ((insn & 0x0E100000) == 0x0C000000)
        {
            CPU_EXEC_STC /*index:175 num:365*/
        }
        else if ((insn & 0x0E100000) == 0x0C100000)
        {
            CPU_EXEC_LDC /*index:42 num:366*/
        }
    };
    break;
    case 0x0E000000:
    {

        switch ((insn & 0x0F000000))
        {

        case 0x0E000000:
        {

            switch ((insn & 0x0F000010))
            {

            case 0x0E000000:
            {

                switch ((insn & 0x0FB00E10))
                {

                case 0x0E100A00:
                {

                    CPU_EXEC_VNMLA /*index:327 num:367*/
                };
                break;
                case 0x0E200A00:
                {

                    CPU_EXEC_VNMLA1 /*index:328 num:368*/
                };
                break;
                case 0x0E300A00:
                {

                    switch ((insn & 0x0FB00E50))
                    {

                    case 0x0E300A00:
                    {

                        CPU_EXEC_VADD2 /*index:259 num:369*/
                    };
                    break;
                    case 0x0E300A40:
                    {

                        CPU_EXEC_VSUB /*index:385 num:370*/
                    };
                    break;
                    }
                };
                break;
                case 0x0E800A00:
                {

                    CPU_EXEC_VDIV /*index:287 num:371*/
                };
                break;
                case 0x0E900A00:
                {

                    CPU_EXEC_VFNMA /*index:294 num:372*/
                };
                break;
                case 0x0EA00A00:
                {

                    CPU_EXEC_VFMA1 /*index:293 num:373*/
                };
                break;
                case 0x0EB00A00:
                {

                    switch ((insn & 0x0FB80E50))
                    {

                    case 0x0EB00A40:
                    {

                        switch ((insn & 0x0FBE0E50))
                        {

                        case 0x0EB00A40:
                        {

                            switch ((insn & 0x0FBF0ED0))
                            {

                            case 0x0EB00A40:
                            {

                                CPU_EXEC_VMOV1 /*index:310 num:374*/
                            };
                            break;
                            case 0x0EB00AC0:
                            {

                                CPU_EXEC_VABS1 /*index:255 num:375*/
                            };
                            break;
                            case 0x0EB10A40:
                            {

                                CPU_EXEC_VNEG1 /*index:326 num:376*/
                            };
                            break;
                            case 0x0EB10AC0:
                            {

                                CPU_EXEC_VSQRT /*index:375 num:377*/
                            };
                            break;
                            }
                        };
                        break;
                        case 0x0EB20A40:
                        {

                            CPU_EXEC_VCVTB /*index:286 num:378*/
                        };
                        break;
                        case 0x0EB40A40:
                        {

                            switch ((insn & 0x0FBF0E50))
                            {

                            case 0x0EB40A40:
                            {

                                CPU_EXEC_VCMP /*index:277 num:379*/
                            };
                            break;
                            case 0x0EB50A40:
                            {

                                CPU_EXEC_VCMP1 /*index:278 num:380*/
                            };
                            break;
                            }
                        };
                        break;
                        case 0x0EB60A40:
                        {

                            CPU_EXEC_VCVT4 /*index:284 num:381*/
                        };
                        break;
                        }
                    };
                    break;
                    case 0x0EB80A40:
                    {

                        if ((insn & 0x0FBA0E50) == 0x0EBA0A40)
                        {
                            CPU_EXEC_VCVT3 /*index:283 num:382*/
                        }
                        else if ((insn & 0x0FB80E50) == 0x0EB80A40)
                        {
                            CPU_EXEC_VCVT1 /*index:281 num:383*/
                        }
                    };
                    break;
                    }
                };
                break;
                }
            };
            break;
            case 0x0E000010:
            {

                if ((insn & 0x0FFF0F10) == 0x0EE10A10)
                {
                    CPU_EXEC_VMSR /*index:319 num:384*/
                }
                else if ((insn & 0x0FFF0F10) == 0x0EF10A10)
                {
                    CPU_EXEC_VMRS /*index:318 num:385*/
                }
                else if ((insn & 0x0FE00F10) == 0x0E000A10)
                {
                    CPU_EXEC_VMOV4 /*index:313 num:386*/
                }
                else if ((insn & 0x0F900F50) == 0x0E800B10)
                {
                    CPU_EXEC_VDUP1 /*index:289 num:387*/
                }
                else if ((insn & 0x0F900F10) == 0x0E000B10)
                {
                    CPU_EXEC_VMOV2 /*index:311 num:388*/
                }
                else if ((insn & 0xFF100010) == 0xFE100010)
                {
                    CPU_EXEC_MRC1 /*index:91 num:389*/
                }
                else if ((insn & 0x0F100F10) == 0x0E100B10)
                {
                    CPU_EXEC_VMOV3 /*index:312 num:390*/
                }
                else if ((insn & 0xFF100010) == 0xFE000010)
                {
                    CPU_EXEC_MCR1 /*index:81 num:391*/
                }
                else if ((insn & 0x0F100010) == 0x0E100010)
                {
                    CPU_EXEC_MRC /*index:90 num:392*/
                }
                else if ((insn & 0x0F100010) == 0x0E000010)
                {
                    CPU_EXEC_MCR /*index:80 num:393*/
                }
            };
            break;
            }
        };
        break;
        case 0x0F000000:
        {

            CPU_EXEC_SVC /*index:201 num:394*/
        };
        break;
        }
    };
    break;
    }
}
